/* ==========================================================================
   KhanToolsProvider — custom theme layer
   Orange / White / Black, modern flat design, light + dark mode.
   Loaded AFTER vendor CSS so it can override it.
   Theme is toggled via [data-theme="light"|"dark"] on <html>.
   ========================================================================== */

:root {
  --kt-orange: #ff6a1a;
  --kt-orange-600: #f1541f;
  --kt-orange-700: #d8430f;
  --kt-orange-soft: #fff1e8;

  --kt-bg: #ffffff;
  --kt-bg-soft: #f4f6f9;
  --kt-surface: #ffffff;
  --kt-surface-2: #fbfbfc;
  --kt-text: #16181d;
  --kt-text-muted: #6b7280;
  --kt-border: #e8e8ec;
  --kt-shadow: 0 10px 30px rgba(20, 20, 20, 0.08);
  --kt-radius: 16px;
  --kt-radius-sm: 10px;
}

html[data-theme="dark"] {
  --kt-orange: #ff7a33;
  --kt-orange-600: #ff6a1a;
  --kt-orange-700: #f1541f;
  --kt-orange-soft: #2a1a10;

  --kt-bg: #0b0b0d;
  --kt-bg-soft: #121317;
  --kt-surface: #17181c;
  --kt-surface-2: #1e1f24;
  --kt-text: #f2f3f5;
  --kt-text-muted: #9aa0aa;
  --kt-border: #2a2b31;
  --kt-shadow: 0 10px 30px rgba(0, 0, 0, 0.55);
}

/* smooth, non-janky theme transition on the big surfaces only */
html[data-theme] body,
html[data-theme] #main-wrapper,
html[data-theme] .topbar,
html[data-theme] .left-sidebar,
html[data-theme] .card,
html[data-theme] .am-widget,
html[data-theme] .invoice-box,
html[data-theme] .frm-single .inside,
html[data-theme] .dis_pimg,
html[data-theme] .dropdown-menu {
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

html[data-theme="dark"] { background: var(--kt-bg) !important; }

html[data-theme] body,
html[data-theme] #main-wrapper {
  background: var(--kt-bg);
  color: var(--kt-text);
}

html[data-theme] a { color: var(--kt-orange-600); }
html[data-theme] a:hover { color: var(--kt-orange-700); }

/* ==========================================================================
   Light / dark toggle — modern pill switch with sliding knob
   Markup:  <button class="kt-theme-toggle"><span class="kt-icon-sun">☀️</span>
                                            <span class="kt-icon-moon">🌙</span></button>
   ========================================================================== */
.kt-theme-toggle {
  position: relative;
  display: inline-block;
  width: 66px;
  height: 30px;
  padding: 0;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  vertical-align: middle;
  /* LIGHT mode = orange track */
  background: linear-gradient(135deg, #ff8a3d, #f1541f);
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.25);
  transition: background 0.3s ease;
}
/* DARK mode = black track */
html[data-theme="dark"] .kt-theme-toggle {
  background: #0d0d10;
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.6);
}

/* white icons — emoji text hidden, crisp SVG shown instead */
.kt-theme-toggle .kt-icon-sun,
.kt-theme-toggle .kt-icon-moon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0;
  color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: opacity 0.25s ease;
  pointer-events: none;
}
.kt-theme-toggle .kt-icon-sun {
  left: 9px;
  width: 17px;
  height: 17px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4.5'/%3E%3Cline x1='12' y1='1.5' x2='12' y2='4'/%3E%3Cline x1='12' y1='20' x2='12' y2='22.5'/%3E%3Cline x1='3.5' y1='3.5' x2='5.3' y2='5.3'/%3E%3Cline x1='18.7' y1='18.7' x2='20.5' y2='20.5'/%3E%3Cline x1='1.5' y1='12' x2='4' y2='12'/%3E%3Cline x1='20' y1='12' x2='22.5' y2='12'/%3E%3Cline x1='3.5' y1='20.5' x2='5.3' y2='18.7'/%3E%3Cline x1='18.7' y1='5.3' x2='20.5' y2='3.5'/%3E%3C/svg%3E");
}
.kt-theme-toggle .kt-icon-moon {
  right: 8px;
  width: 19px;
  height: 19px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M18 14.5A8 8 0 0 1 8.2 4.7 7.5 7.5 0 1 0 18 14.5z'/%3E%3Ccircle cx='17' cy='4.5' r='1.1'/%3E%3Ccircle cx='20' cy='8' r='0.8'/%3E%3Ccircle cx='14.5' cy='2.5' r='0.7'/%3E%3C/svg%3E");
}
.kt-theme-toggle .kt-icon-sun { opacity: 1; }
.kt-theme-toggle .kt-icon-moon { opacity: 0; }
html[data-theme="dark"] .kt-theme-toggle .kt-icon-sun { opacity: 0; }
html[data-theme="dark"] .kt-theme-toggle .kt-icon-moon { opacity: 1; }

/* big white knob — right in light, left in dark */
.kt-theme-toggle::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 39px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.35);
  transition: left 0.3s cubic-bezier(0.4, 0.1, 0.2, 1.2);
}
html[data-theme="dark"] .kt-theme-toggle::after { left: 3px; }

.kt-theme-toggle-fixed {
  position: fixed;
  top: 18px;
  right: 18px;
  z-index: 2000;
}

/* ==========================================================================
   Member dashboard (layout.phtml)
   ========================================================================== */
html[data-theme] .topbar,
html[data-theme] .topbar .top-navbar,
html[data-theme] .navbar-collapse,
html[data-theme] .navbar-header {
  background: var(--kt-bg) !important;
}
html[data-theme] .topbar { border-bottom: 1px solid var(--kt-border); }
html[data-theme] .topbar .nav-link,
html[data-theme] .topbar .navbar-nav .nav-link span,
html[data-theme] .topbar .navbar-nav .nav-link .text-dark {
  color: var(--kt-text) !important;
}

html[data-theme] .left-sidebar,
html[data-theme] .scroll-sidebar {
  background: var(--kt-bg) !important;
  border-right: 1px solid var(--kt-border);
}
html[data-theme] .sidebar-nav ul .list-divider { background: var(--kt-border) !important; margin: 10px 20px; }
html[data-theme] .sidebar-nav .nav-small-cap {
  color: var(--kt-text-muted) !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: 0.6px;
  padding: 10px 22px 6px !important;
  opacity: 0.75;
}
html[data-theme] .sidebar-nav ul#sidebarnav { padding: 14px 0; }
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link {
  display: flex !important;
  align-items: center;
  gap: 12px;
  color: var(--kt-text) !important;
  font-size: 14px;
  font-weight: 500;
  border-radius: var(--kt-radius-sm);
  margin: 3px 12px;
  padding: 11px 14px !important;
  transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
}
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link .feather-icon,
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link > i:first-child {
  flex: none;
  width: 18px;
  text-align: center;
  font-size: 15px;
  transition: color 0.15s ease;
}
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link .feather-icon:not([class*="kt-ic-"]),
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link > i:first-child:not([class*="kt-ic-"]) {
  color: var(--kt-text-muted);
}
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link:hover,
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link.active {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange)) !important;
  color: #fff !important;
  font-weight: 700;
  box-shadow: 0 8px 18px rgba(241, 84, 31, 0.3);
  transform: translateX(2px);
}
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link:hover .feather-icon,
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link:hover > i:first-child,
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link.active .feather-icon,
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link.active > i:first-child {
  color: #fff !important;
}
/* distinct accent color per icon (professional multi-color sidebar, like the reference dashboard) */
html[data-theme] .kt-ic-blue   { color: #3b82f6 !important; }
html[data-theme] .kt-ic-amber  { color: #f59e0b !important; }
html[data-theme] .kt-ic-pink   { color: #ec4899 !important; }
html[data-theme] .kt-ic-purple { color: #a855f7 !important; }
html[data-theme] .kt-ic-green  { color: #22c55e !important; }
html[data-theme] .kt-ic-red    { color: #ef4444 !important; }
html[data-theme] .kt-ic-teal   { color: #14b8a6 !important; }
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link:hover [class*="kt-ic-"],
html[data-theme] .sidebar-nav .sidebar-item .sidebar-link.active [class*="kt-ic-"] {
  color: #fff !important;
}

/* "need help?" WhatsApp box pinned at the bottom of the sidebar */
.kt-sidebar-help {
  margin: 16px 14px 10px;
  padding: 12px 14px;
  border: 1.5px dashed var(--kt-orange);
  border-radius: 12px;
  background: var(--kt-orange-soft);
  text-align: center;
  text-decoration: none;
  display: block;
}
.kt-sidebar-help-label {
  display: block;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.5px;
  color: var(--kt-text-muted);
  margin-bottom: 4px;
}
.kt-sidebar-help-number {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  color: var(--kt-orange-600);
}

html[data-theme] .page-breadcrumb h2,
html[data-theme] .page-title { color: var(--kt-text) !important; }

html[data-theme] .am-widget,
html[data-theme] .card,
html[data-theme] .am-block .alert-success {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: var(--kt-radius) !important;
  box-shadow: var(--kt-shadow);
  color: var(--kt-text);
  padding: 22px 24px;
  margin-bottom: 20px;
}
html[data-theme] .am-widget h2 {
  color: var(--kt-text) !important;
  font-size: 18px;
  font-weight: 800;
  margin: 0 0 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--kt-border);
}
html[data-theme] .card-title { color: var(--kt-text) !important; }
html[data-theme] .am-block .alert-success { padding: 0; box-shadow: none; border: none; background: transparent !important; }
html[data-theme] .container-fluid { padding: 0 26px; }
html[data-theme] .page-breadcrumb { padding: 20px 26px 6px; }

/* ==========================================================================
   DARK MODE SAFETY NET — aMember's own pages (Payment History, My Profile,
   HelpDesk, receipts, tabs, pagination...) are rendered by vendor CSS with
   text colors hardcoded for a light background. Without this, dark mode
   turns the surrounding card dark but leaves that text dark-on-dark
   (invisible). This section forces readable text wherever vendor CSS
   didn't already give it an intentional accent color.
   ========================================================================== */
html[data-theme="dark"] .am-body-content,
html[data-theme="dark"] .am-body-content h1,
html[data-theme="dark"] .am-body-content h2,
html[data-theme="dark"] .am-body-content h3,
html[data-theme="dark"] .am-body-content h4,
html[data-theme="dark"] .am-body-content h5,
html[data-theme="dark"] .am-body-content h6,
html[data-theme="dark"] .am-body-content p,
html[data-theme="dark"] .am-body-content span,
html[data-theme="dark"] .am-body-content label,
html[data-theme="dark"] .am-body-content li,
html[data-theme="dark"] .am-body-content strong,
html[data-theme="dark"] .am-body-content b,
html[data-theme="dark"] .am-body-content small,
html[data-theme="dark"] .am-widget,
html[data-theme="dark"] .am-widget p,
html[data-theme="dark"] .am-widget span,
html[data-theme="dark"] .am-widget label {
  color: var(--kt-text);
}

/* aMember grid/table (Payment History, other listing pages) */
html[data-theme="dark"] .am-grid-container { border-color: var(--kt-border) !important; box-shadow: none !important; }
html[data-theme="dark"] .am-grid th {
  background: var(--kt-surface-2) !important;
  background-image: none !important;
  color: var(--kt-text) !important;
  border-color: var(--kt-border) !important;
}
html[data-theme="dark"] .am-grid th a,
html[data-theme="dark"] .am-grid th a.sorted-asc,
html[data-theme="dark"] .am-grid th a.sorted-desc { color: var(--kt-text) !important; }
html[data-theme="dark"] .am-grid tr.am-grid-row > td {
  background: var(--kt-surface) !important;
  color: var(--kt-text) !important;
  border-color: var(--kt-border) !important;
}
html[data-theme="dark"] .am-grid tr.am-grid-row.odd td { background: var(--kt-surface-2) !important; }
html[data-theme="dark"] .am-grid tr.am-grid-row > td.sorted,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expandable-data,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expanded { background: var(--kt-surface-2) !important; }
html[data-theme="dark"] .am-grid-total { color: var(--kt-text) !important; }
html[data-theme="dark"] .am-member-payment-history-row-refund td,
html[data-theme="dark"] .am-member-payment-history-row-refund td a { color: #ff6b6b !important; }

/* pagination */
html[data-theme="dark"] .am-pagination a { background: var(--kt-surface-2) !important; color: var(--kt-text) !important; }
html[data-theme="dark"] .am-pagination .am-pagination-current { background: var(--kt-orange) !important; color: #fff !important; }

/* receipts / invoices */
html[data-theme="dark"] .am-receipt { border-color: var(--kt-border) !important; box-shadow: none !important; }
html[data-theme="dark"] .am-receipt td { background: var(--kt-surface-2) !important; color: var(--kt-text) !important; border-color: var(--kt-border) !important; }
html[data-theme="dark"] .am-receipt td.am-receipt-total { background: var(--kt-surface) !important; }

/* filter bar (grid filters) */
html[data-theme="dark"] .am-filter-wrap { background: var(--kt-surface-2) !important; color: var(--kt-text) !important; }
html[data-theme="dark"] .am-filter-wrap form.filter input,
html[data-theme="dark"] .am-filter-wrap form.filter select { background-color: var(--kt-bg-soft) !important; color: var(--kt-text) !important; }

/* member area tabs (if used) */
html[data-theme="dark"] ul.am-tabs { background: var(--kt-surface-2) !important; border-color: var(--kt-border) !important; }
html[data-theme="dark"] ul.am-tabs > li { background: var(--kt-surface) !important; }
html[data-theme="dark"] ul.am-tabs a { color: var(--kt-text) !important; border-color: var(--kt-border) !important; }

/* helpdesk / two-column layouts */
html[data-theme="dark"] .am-layout-two-coll { background-color: var(--kt-surface-2) !important; border-color: var(--kt-border) !important; }
html[data-theme="dark"] .am-layout-two-coll .am-layout-two-coll-bottom,
html[data-theme="dark"] .am-layout-two-coll .am-layout-two-coll-top { background-color: var(--kt-surface-2) !important; }

/* breadcrumbs */
html[data-theme="dark"] ul.am-breadcrumbs { color: var(--kt-text-muted) !important; }

html[data-theme] .dropdown-menu {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  box-shadow: var(--kt-shadow);
  border-radius: var(--kt-radius-sm);
}
html[data-theme] .dropdown-menu .dropdown-item { color: var(--kt-text) !important; }
html[data-theme] .dropdown-menu .dropdown-item:hover {
  background: var(--kt-orange-soft) !important;
  color: var(--kt-orange-700) !important;
}
html[data-theme] .dropdown-divider { border-color: var(--kt-border) !important; }

html[data-theme] footer.footer {
  background: transparent !important;
  color: var(--kt-text-muted) !important;
}
html[data-theme] footer.footer a { color: var(--kt-orange-600); }

/* ---- member dashboard resource content (blocks/member-main-resources.phtml) ---- */
html[data-theme] .dis_pimg {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: var(--kt-radius-sm) !important;
  box-shadow: var(--kt-shadow);
}
html[data-theme] .dis_pimg:hover {
  border-color: var(--kt-orange) !important;
  box-shadow: 0 12px 26px rgba(241, 84, 31, 0.22);
}
html[data-theme] #searchInput {
  width: 100%;
  max-width: 480px;
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 999px !important;
  color: var(--kt-text) !important;
  padding: 10px 18px !important;
}
html[data-theme] #searchInput:focus {
  border-color: var(--kt-orange) !important;
  box-shadow: 0 0 0 3px var(--kt-orange-soft) !important;
  outline: none;
}
html[data-theme] #searchInput::placeholder { color: var(--kt-text-muted) !important; }

/* the tool-card title button + generic bootstrap primary => orange */
html[data-theme] .dis_pimg .btn-primary,
html[data-theme] .am-body-content .btn-primary,
html[data-theme] .am-body-content a.btn-primary {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange)) !important;
  border: none !important;
  border-radius: var(--kt-radius-sm) !important;
  color: #fff !important;
  margin-top: 8px;
}

/* marquee announcement box (block sets .container white + green border) */
html[data-theme="dark"] .container {
  background-color: var(--kt-surface) !important;
  border-color: var(--kt-orange) !important;
}
html[data-theme="dark"] .marquee { color: var(--kt-text) !important; }
html[data-theme="dark"] .marquee a { color: var(--kt-orange) !important; }

/* ==========================================================================
   Buttons — orange, modern, consistent everywhere
   ========================================================================== */
html[data-theme] .btn-orange,
html[data-theme] input[type="submit"].frm-submit,
html[data-theme] .frm-single .frm-submit,
html[data-theme] .am-body-content input[type="submit"],
html[data-theme] .am-body-content button[type="submit"],
html[data-theme] .am-admin input[type="submit"],
html[data-theme] .am-popup input[type="submit"] {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange)) !important;
  border: none !important;
  border-radius: var(--kt-radius-sm) !important;
  color: #fff !important;
  font-weight: 600;
  box-shadow: 0 8px 20px rgba(241, 84, 31, 0.3);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
html[data-theme] .btn-orange:hover,
html[data-theme] .frm-single .frm-submit:hover,
html[data-theme] .am-body-content input[type="submit"]:hover,
html[data-theme] .am-body-content button[type="submit"]:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(241, 84, 31, 0.4);
}

/* ==========================================================================
   LOGIN page — split hero + card (orange / black / white), light + dark
   ========================================================================== */
html[data-theme] body.am-page-login {
  min-height: 100vh;
  color: var(--kt-text);
  /* ONE continuous grid background across the whole login page */
  background:
    linear-gradient(rgba(0, 0, 0, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 0, 0, 0.04) 1px, transparent 1px),
    var(--kt-bg-soft) !important;
  background-size: 44px 44px, 44px 44px, 100% 100% !important;
  background-attachment: fixed;
}
html[data-theme="dark"] body.am-page-login {
  background:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    radial-gradient(1000px circle at 88% -12%, rgba(255, 106, 26, 0.10), transparent 55%),
    linear-gradient(160deg, #141519 0%, #0b0b0d 60%, #1d1108 130%) !important;
  background-size: 44px 44px, 44px 44px, 100% 100%, 100% 100% !important;
  background-attachment: fixed;
}

/* kill the old tilted white "paper stack" pseudo-elements */
html[data-theme] .frm-single::before,
html[data-theme] .frm-single::after { display: none !important; }

/* split container */
.kt-login-split {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  min-height: 100vh;
  box-sizing: border-box;
}
.kt-login-hero {
  flex: 1 1 54%;
  min-width: 300px;
  color: var(--kt-text);
  padding: 5vh 6vw;
  border: none;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: transparent;   /* inherits the one page-wide grid background */
}
.kt-login-panel {
  flex: 1 1 46%;
  min-width: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4vh 5vw;
}

.kt-brand-pill {
  display: inline-flex; align-items: center; gap: 12px;
  padding: 8px 18px 8px 9px;
  border: 1px solid var(--kt-border);
  border-radius: 999px;
  background: var(--kt-surface-2);
  margin-bottom: 22px;
}
.kt-brand-badge {
  width: 32px; height: 32px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--kt-orange), var(--kt-orange-700));
  color: #fff; font-weight: 800; font-size: 15px;
}
.kt-brand-badge-mark {
  position: relative;
  width: 36px;
  height: 36px;
  border-radius: 12px;
  background: linear-gradient(145deg, #121316, #0a0b0d);
  border: 1px solid rgba(255, 106, 26, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
.kt-brand-badge-mark::before,
.kt-brand-badge-mark::after {
  content: "";
  position: absolute;
  border-left: 4px solid var(--kt-orange);
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-radius: 6px;
}
.kt-brand-badge-mark::before {
  inset: 7px 10px 7px 9px;
  transform: skewY(14deg);
}
.kt-brand-badge-mark::after {
  inset: 12px 8px 7px 17px;
  transform: skewY(-16deg);
}
.kt-brand-name { color: var(--kt-text); font-weight: 700; letter-spacing: 1px; font-size: 13.5px; }

.kt-hero-title {
  font-size: clamp(30px, 4.6vw, 52px);
  line-height: 1.06;
  font-weight: 800;
  letter-spacing: -0.7px;
  margin: 0 0 16px;
  color: var(--kt-text);
}
.kt-hero-accent {
  background: linear-gradient(100deg, var(--kt-orange), #ffb27a);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--kt-orange);
}
.kt-hero-sub {
  font-size: 15.5px; line-height: 1.55;
  color: var(--kt-text-muted);
  max-width: 500px; margin: 0 0 22px;
}
.kt-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 22px; }
.kt-hero-btn-primary,
.kt-hero-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 13px 26px; border-radius: 999px;
  font-weight: 700; font-size: 15px; text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}
.kt-hero-btn-primary {
  background: linear-gradient(135deg, var(--kt-orange), var(--kt-orange-700));
  color: #fff !important; box-shadow: 0 10px 26px rgba(241, 84, 31, 0.45);
}
.kt-hero-btn-primary:hover { transform: translateY(-2px); color: #fff !important; }
.kt-hero-btn-outline {
  background: var(--kt-surface);
  border: 1px solid var(--kt-border); color: var(--kt-text) !important;
}
.kt-hero-btn-outline:hover { border-color: var(--kt-orange); color: var(--kt-orange-600) !important; }

.kt-hero-features { display: flex; flex-wrap: wrap; gap: 12px; }
.kt-feature {
  flex: 1 1 150px; min-width: 128px;
  padding: 14px 16px; border-radius: 13px;
  background: var(--kt-surface);
  border: 1px solid var(--kt-border);
}
.kt-feature strong { display: block; color: var(--kt-text); font-size: 14.5px; margin-bottom: 3px; }
.kt-feature span { color: var(--kt-text-muted); font-size: 12.5px; }
.kt-feature-link { text-decoration: none; transition: border-color 0.15s ease, transform 0.15s ease; }
.kt-feature-link:hover { border-color: var(--kt-orange); transform: translateY(-2px); }
.kt-feature-link strong { color: var(--kt-text); }

/* WhatsApp channel promo box */
.kt-whatsapp-channel {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 14px;
  padding: 13px 16px;
  border-radius: 13px;
  background: var(--kt-surface);
  border: 1px solid var(--kt-border);
  text-decoration: none;
  transition: border-color 0.15s ease, transform 0.15s ease;
}
.kt-whatsapp-channel:hover { border-color: #25d366; transform: translateY(-2px); }
.kt-whatsapp-channel-icon {
  flex: none;
  width: 36px; height: 36px;
  border-radius: 50%;
  background: #25d366;
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 17px;
}
.kt-whatsapp-channel-body { display: flex; flex-direction: column; gap: 2px; }
.kt-whatsapp-channel-body strong { color: var(--kt-text); font-size: 14px; }
.kt-whatsapp-channel-body > span:not(.kt-whatsapp-channel-cta) { color: var(--kt-text-muted); font-size: 12.5px; line-height: 1.4; }
.kt-whatsapp-channel-cta { color: #25d366 !important; font-weight: 700; font-size: 12.5px; margin-top: 2px; }

/* hide mCustomScrollbar's tiny arrow buttons (scrolling itself keeps working) —
   these can appear as a stray floating arrow on the page edge */
.mCSB_buttonUp, .mCSB_buttonDown, .mCSB_buttonLeft, .mCSB_buttonRight { display: none !important; }

/* ==========================================================================
   Member-area social-proof / sales toast (injected by sales-popup.js)
   ========================================================================== */
.kt-sales-toast {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 1400;
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 330px;
  padding: 12px 40px 12px 12px;
  border-radius: 16px;
  background: var(--kt-surface);
  border: 1px solid var(--kt-border);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  opacity: 0;
  visibility: hidden;
  transform: translateY(16px) scale(0.96);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}
html[data-theme="dark"] .kt-sales-toast { background: #16171b; border-color: #2a2b31; }
.kt-sales-toast.is-visible { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }

.kt-sales-icon {
  flex: none;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff;
  font-size: 17px;
  box-shadow: 0 8px 18px rgba(241, 84, 31, 0.34);
}
.kt-sales-body { display: grid; gap: 2px; min-width: 0; }
.kt-sales-title { color: var(--kt-text); font-size: 13.5px; font-weight: 800; }
.kt-sales-meta { color: var(--kt-text-muted); font-size: 12px; line-height: 1.35; }
.kt-sales-meta b { color: var(--kt-orange-600); }
.kt-sales-meta s { color: var(--kt-text-muted); opacity: 0.75; text-decoration: line-through; }
.kt-sales-close {
  position: absolute;
  top: 8px;
  right: 10px;
  background: none;
  border: none;
  color: var(--kt-text-muted);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}
.kt-sales-close:hover { color: var(--kt-orange-600); }

@media (max-width: 520px) {
  .kt-sales-toast { left: 12px; right: 12px; bottom: 12px; max-width: none; }
}

/* ---- login card (theme-aware) ---- */
.kt-login-card { width: 100%; max-width: 440px; margin: 0 !important; }
.kt-card-inside {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 20px !important;
  box-shadow: var(--kt-shadow) !important;
  padding: 30px 28px !important;
  overflow: visible !important;
}
html[data-theme="dark"] .kt-card-inside {
  background: #16171b !important;
  border-color: #26272e !important;
}
.kt-card-inside::before { display: none !important; }
.kt-card-title { font-size: 26px; font-weight: 800; color: var(--kt-text); margin: 0 0 6px; }
.kt-card-sub { font-size: 13.5px; color: var(--kt-text-muted); margin: 0 0 20px; line-height: 1.45; }
.kt-field-label { display: block; font-weight: 700; font-size: 13px; color: var(--kt-text); margin: 0 0 7px; }
.kt-field { position: relative; margin-bottom: 15px; }
.kt-field-ico {
  position: absolute; left: 14px; top: 50%; transform: translateY(-50%);
  color: var(--kt-orange-600); font-size: 14.5px;
}
.kt-input {
  width: 100%; box-sizing: border-box;
  height: 47px; padding: 0 42px 0 40px;
  background: var(--kt-bg-soft) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 11px !important;
  color: var(--kt-text) !important;
  font-size: 14.5px;
}
html[data-theme="dark"] .kt-input { background: #1e1f25 !important; border-color: #2c2d35 !important; }
.kt-input::placeholder { color: var(--kt-text-muted); }
.kt-input:focus {
  outline: none;
  border-color: var(--kt-orange) !important;
  box-shadow: 0 0 0 3px var(--kt-orange-soft) !important;
}
.kt-pass-toggle {
  position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
  background: none; border: none; cursor: pointer;
  color: var(--kt-text-muted); font-size: 14.5px; padding: 6px;
}
.kt-pass-toggle.is-on { color: var(--kt-orange-600); }
.kt-card-row {
  display: flex; align-items: center; justify-content: space-between;
  margin: 3px 0 18px; font-size: 13px;
}
.kt-remember { display: flex; align-items: center; gap: 8px; color: var(--kt-text-muted); cursor: pointer; margin: 0; }
.kt-remember input { width: auto; margin: 0; accent-color: var(--kt-orange); }
.kt-link { color: var(--kt-orange-600); text-decoration: none; font-weight: 600; }
.kt-link:hover { color: var(--kt-orange-700); text-decoration: underline; }
.kt-link-strong { font-weight: 700; }
.kt-signin-btn {
  width: 100%; height: 49px; border: none; cursor: pointer;
  border-radius: 11px; font-size: 15.5px; font-weight: 700; color: #fff !important;
  background: linear-gradient(135deg, var(--kt-orange), var(--kt-orange-700)) !important;
  box-shadow: 0 12px 26px rgba(241, 84, 31, 0.4);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  margin-bottom: 15px;
}
.kt-signin-btn:hover { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(241, 84, 31, 0.5); }
.kt-card-alt { text-align: center; font-size: 13.5px; color: var(--kt-text-muted); margin-bottom: 6px; }
.kt-card-note {
  margin-top: 18px; padding: 14px 16px;
  background: var(--kt-orange-soft); border: 1px solid var(--kt-border);
  border-radius: 12px; font-size: 12.5px; color: var(--kt-text-muted); line-height: 1.5;
}
html[data-theme="dark"] .kt-card-note { background: rgba(255, 106, 26, 0.08); border-color: #2c2d35; }
.kt-card-note i { color: var(--kt-orange-600); margin-right: 6px; }
.kt-card-foot {
  display: flex; flex-wrap: wrap; gap: 14px; justify-content: center;
  margin-top: 18px; font-size: 12.5px;
}
.kt-card-foot a { color: var(--kt-text-muted); text-decoration: none; }
.kt-card-foot a:hover { color: var(--kt-orange-600); }
.kt-card-copy { text-align: center; font-size: 11.5px; color: var(--kt-text-muted); margin-top: 12px; }
.kt-card-copy a { color: var(--kt-orange-600); text-decoration: none; }

/* reset-password card (uses legacy .frm-inp/.frm-ico inside .kt-card-inside) —
   selectors below intentionally repeat ".frm-single" to out-specificity the
   vendor rule ".frm-single .frm-input .frm-ico" which otherwise wins and
   pins the icon to the old 40px-tall layout (top:0; line-height:40px),
   making it float near the top of the taller 50px input. */
.kt-card-inside .title strong { color: var(--kt-text); }
.kt-card-inside .frm-title { color: var(--kt-text); font-weight: 700; font-size: 22px; text-align: center; margin-bottom: 6px; }
.kt-card-inside .text-center { color: var(--kt-text-muted); font-size: 14px; }
.frm-single .kt-card-inside .frm-input { position: relative !important; margin-bottom: 16px !important; }
.frm-single .kt-card-inside .frm-input .frm-inp {
  width: 100% !important; box-sizing: border-box !important;
  height: 50px !important; padding: 0 14px 0 40px !important;
  line-height: 50px !important;
  background: var(--kt-bg-soft) !important;
  border: 1px solid var(--kt-border) !important;
  border-left: 1px solid var(--kt-border) !important;
  border-radius: 12px !important;
  color: var(--kt-text) !important;
}
html[data-theme="dark"] .frm-single .kt-card-inside .frm-input .frm-inp { background: #1e1f25 !important; border-color: #2c2d35 !important; }
.frm-single .kt-card-inside .frm-input .frm-inp:focus { border-color: var(--kt-orange) !important; box-shadow: 0 0 0 3px var(--kt-orange-soft) !important; outline: none !important; padding-left: 40px !important; }
.frm-single .kt-card-inside .frm-input .frm-ico {
  position: absolute !important;
  top: 50% !important;
  left: 14px !important;
  width: auto !important;
  height: auto !important;
  line-height: normal !important;
  font-size: 15px !important;
  transform: translateY(-50%);
  color: var(--kt-orange-600) !important;
}
.kt-card-inside .btn-orange { border-radius: 12px !important; height: 50px; line-height: 30px; font-weight: 700; }
.kt-card-inside .a-link { color: var(--kt-orange-600); text-decoration: none; font-weight: 600; }
.kt-card-inside .a-link:hover { color: var(--kt-orange-700); }
.kt-card-inside .frm-footer { color: var(--kt-text-muted); border-top: 1px solid var(--kt-border); margin-top: 14px; padding-top: 12px; text-align: center; font-size: 12.5px; }

@media (max-width: 860px) {
  .kt-login-hero { flex-basis: 100%; padding: 42px 24px; }
  .kt-login-panel { flex-basis: 100%; padding: 32px 20px; }
  .kt-hero-title { font-size: clamp(32px, 9vw, 44px); }
}

/* ==========================================================================
   SIGNUP page — fix dark-mode glitches (layout-signup.phtml, .invoice-box)
   ========================================================================== */
html[data-theme] body.am-page-signup {
  background:
    radial-gradient(700px circle at 12% -5%, var(--kt-orange-soft), transparent 55%),
    radial-gradient(700px circle at 90% 105%, var(--kt-orange-soft), transparent 55%),
    var(--kt-bg-soft) !important;
  background-attachment: fixed;
  min-height: 100vh;
  color: var(--kt-text);
}
/* kill leftover white bands from wrapper rows/cols */
html[data-theme] body.am-page-signup .row,
html[data-theme] body.am-page-signup .row.small-spacing,
html[data-theme] body.am-page-signup [class^="col-"] {
  background: transparent !important;
}

html[data-theme] .invoice-box {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: var(--kt-radius) !important;
  box-shadow: var(--kt-shadow) !important;
  color: var(--kt-text) !important;
}
html[data-theme] .invoice-box .title strong,
html[data-theme] .invoice-box .frm-title { color: var(--kt-text) !important; }

.kt-signup-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-bottom: 4px;
}

.kt-signup-brand .kt-header-logo-mark {
  width: 68px;
  height: 68px;
  border-radius: 20px;
}

/* form inside signup */
html[data-theme] .am-signup .am-form form {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: var(--kt-radius-sm) !important;
}
html[data-theme] .am-signup .am-form fieldset legend {
  background: var(--kt-surface-2) !important;
  border-bottom: 1px solid var(--kt-border) !important;
  color: var(--kt-text) !important;
}
/* the stray light row bands / lines seen in dark mode */
html[data-theme="dark"] .am-form .am-row.am-row-highlight { background: var(--kt-surface-2) !important; }
html[data-theme="dark"] .am-form .am-row.am-row-head { background: var(--kt-surface-2) !important; }
html[data-theme="dark"] .am-form div.am-row { border-color: var(--kt-border) !important; }
html[data-theme="dark"] .am-pass-indicator-bar { background: var(--kt-border) !important; }
html[data-theme] .am-form .am-element-title label,
html[data-theme] .am-form .am-element-title .comment { color: var(--kt-text) !important; }
html[data-theme] .am-form .am-element-title .comment { opacity: 0.7; }

/* inputs (shared login + signup + member forms) */
html[data-theme] .am-form input[type="text"],
html[data-theme] .am-form input[type="password"],
html[data-theme] .am-form input[type="email"],
html[data-theme] .am-form select,
html[data-theme] .am-form textarea,
html[data-theme] .am-body-content input[type="text"],
html[data-theme] .am-body-content input[type="password"],
html[data-theme] .am-body-content select,
html[data-theme] .am-body-content textarea {
  background: var(--kt-bg-soft) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: var(--kt-radius-sm) !important;
  color: var(--kt-text) !important;
}
html[data-theme] .am-form input:focus,
html[data-theme] .am-body-content input:focus,
html[data-theme] .am-body-content select:focus,
html[data-theme] .am-body-content textarea:focus {
  border-color: var(--kt-orange) !important;
  box-shadow: 0 0 0 3px var(--kt-orange-soft) !important;
}
html[data-theme] .radio.am-el-checked { border-color: var(--kt-orange) !important; }

html[data-theme] .am-info,
html[data-theme] .am-login-text {
  background: var(--kt-orange-soft) !important;
  border-radius: var(--kt-radius-sm);
  padding: 10px 14px;
  color: var(--kt-text) !important;
}

/* ==========================================================================
   SIGNUP — product tiles + payment boxes (noxtools-style, aMember Pro)
   Uses aMember's real classes: .am-product-title / .am-product-desc /
   #row-paysys_id / .am-paysystem-title / .am-paysystem-desc
   ========================================================================== */

/* each product option (a label containing a product title) becomes a tile */
.am-signup .am-form label:has(.am-product-title) {
  display: block;
  position: relative;
  box-sizing: border-box;
  padding: 18px 54px 18px 20px;
  margin: 0 0 14px;
  background: var(--kt-surface);
  border: 1px solid var(--kt-border);
  border-radius: 14px;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.am-signup .am-form label:has(.am-product-title):hover {
  border-color: var(--kt-orange);
  box-shadow: 0 8px 22px rgba(241, 84, 31, 0.12);
}
.am-signup .am-form label:has(.am-product-title) > input[type="checkbox"],
.am-signup .am-form label:has(.am-product-title) > input[type="radio"] {
  position: absolute;
  right: 18px;
  top: 20px;
  width: 20px; height: 20px;
  accent-color: var(--kt-orange);
  cursor: pointer;
}
/* selected product */
.am-signup .am-form label:has(.am-product-title) > input:checked {
  outline: none;
}
.am-signup .am-form label:has(.am-product-title):has(input:checked) {
  border-color: var(--kt-orange);
  background: var(--kt-orange-soft);
  box-shadow: 0 0 0 2px var(--kt-orange) inset;
}
html[data-theme="dark"] .am-signup .am-form label:has(.am-product-title):has(input:checked) {
  background: rgba(255, 106, 26, 0.10);
}

.am-signup .am-product-title {
  display: block;
  font-weight: 800;
  font-size: 17px;
  color: var(--kt-text);
  margin-bottom: 4px;
  line-height: 1.35;
}
/* aMember prints the price inside/after the title as bold text → make it orange */
.am-signup .am-product-title b,
.am-signup .am-product-title strong,
.am-signup .am-product-price {
  color: var(--kt-orange-600) !important;
  font-weight: 800;
}
.am-signup .am-product-desc {
  color: var(--kt-text-muted) !important;
  font-size: 13px;
  line-height: 1.55;
  font-style: normal;
}

/* ---- payment method boxes ---- */
.am-signup #row-paysys_id .am-element,
#row-paysys_id .am-element {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
#row-paysys_id label {
  flex: 1 1 220px;
  display: block !important;
  position: relative;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 16px 46px 16px 18px;
  background: var(--kt-surface);
  border: 1px solid var(--kt-border);
  border-radius: 12px;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
#row-paysys_id label:hover { border-color: var(--kt-orange); }
#row-paysys_id label:has(input:checked) {
  border-color: var(--kt-orange);
  background: var(--kt-orange-soft);
  box-shadow: 0 0 0 2px var(--kt-orange) inset;
}
html[data-theme="dark"] #row-paysys_id label:has(input:checked) { background: rgba(255, 106, 26, 0.10); }
#row-paysys_id label input[type="radio"] {
  position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  width: 18px; height: 18px;
  accent-color: var(--kt-orange);
}
.am-paysystem-title { font-weight: 700; color: var(--kt-text); }
.am-paysystem-desc { color: var(--kt-text-muted); font-size: 12.5px; font-style: normal; }

/* ==========================================================================
   Currency switcher (signup page)
   ========================================================================== */
.kt-currency-switcher {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  justify-content: center;
  padding: 12px 14px;
  margin: 0 0 20px;
  background: var(--kt-surface-2);
  border: 1px solid var(--kt-border);
  border-radius: var(--kt-radius-sm);
}
.kt-currency-label {
  color: var(--kt-text-muted);
  font-size: 13px;
  margin-right: 4px;
}
.kt-currency-option {
  border: 1px solid var(--kt-border);
  background: var(--kt-surface);
  color: var(--kt-text);
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
}
.kt-currency-option:hover { border-color: var(--kt-orange); color: var(--kt-orange-600); }
.kt-currency-option.active {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  border-color: transparent;
  color: #fff;
}
.kt-currency-note {
  flex-basis: 100%;
  text-align: center;
  font-size: 11px;
  color: var(--kt-text-muted);
  margin-top: 4px;
}
.kt-price { white-space: nowrap; }

/* ==========================================================================
   Back-to-top button (injected by theme-toggle.js)
   ========================================================================== */
.kt-back-to-top {
  position: fixed;
  bottom: 22px;
  right: 22px;
  width: 46px;
  height: 46px;
  border: none;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff;
  font-size: 20px;
  line-height: 46px;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(241, 84, 31, 0.4);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
  z-index: 1500;
}
.kt-back-to-top.kt-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.kt-back-to-top:hover { transform: translateY(-2px) scale(1.05); }

/* ==========================================================================
   2026 redesign hardening
   ========================================================================== */
:root {
  --kt-black: #090909;
  --kt-black-soft: #101114;
  --kt-surface-3: #f1f3f7;
  --kt-text-soft: #4b5563;
  --kt-overlay: rgba(6, 6, 8, 0.72);
}

html[data-theme="dark"] {
  --kt-surface-3: #22242b;
  --kt-text-soft: #c2c8d2;
  --kt-overlay: rgba(1, 1, 1, 0.82);
}

html[data-theme] .am-body-content,
html[data-theme] .am-body-content-content,
html[data-theme] .am-body-content-content p,
html[data-theme] .am-body-content-content li,
html[data-theme] .am-body-content-content span,
html[data-theme] .am-body-content-content div,
html[data-theme] .am-body-content-content td,
html[data-theme] .am-body-content-content th,
html[data-theme] .am-body-content-content label,
html[data-theme] .am-body-content-content h1,
html[data-theme] .am-body-content-content h2,
html[data-theme] .am-body-content-content h3,
html[data-theme] .am-body-content-content h4,
html[data-theme] .am-body-content-content h5,
html[data-theme] .am-body-content-content h6,
html[data-theme] .box-content,
html[data-theme] .box-content p,
html[data-theme] .box-content span,
html[data-theme] .box-content td,
html[data-theme] .box-content th,
html[data-theme] .text-muted,
html[data-theme] .text-secondary {
  color: var(--kt-text) !important;
}

html[data-theme] .am-body-content-content .comment,
html[data-theme] .am-body-content-content .small,
html[data-theme] .am-body-content-content small,
html[data-theme] .breadcrumb,
html[data-theme] .kt-card-sub,
html[data-theme] .kt-hero-copy p,
html[data-theme] .kt-hero-stat-label,
html[data-theme] .kt-header-status,
html[data-theme] .am-paysystem-desc,
html[data-theme] .am-product-desc,
html[data-theme] .am-filter-wrap,
html[data-theme] .am-grid-total {
  color: var(--kt-text-muted) !important;
}

html[data-theme] .am-body-content-content table,
html[data-theme] .am-body-content-content .table,
html[data-theme] .am-grid,
html[data-theme] .am-grid table,
html[data-theme] .am-receipt,
html[data-theme] .am-receipt table {
  color: var(--kt-text) !important;
}

html[data-theme] .am-body-content-content a:not(.btn):not(.button),
html[data-theme] .am-grid a,
html[data-theme] .am-receipt a,
html[data-theme] .am-tabs a,
html[data-theme] .breadcrumb a {
  color: var(--kt-orange-600) !important;
}

html[data-theme] .am-body-content-content a:not(.btn):not(.button):hover,
html[data-theme] .am-grid a:hover,
html[data-theme] .am-receipt a:hover {
  color: var(--kt-orange) !important;
}

html[data-theme] .am-body-content-content .alert,
html[data-theme] .am-body-content-content .alert-info,
html[data-theme] .am-body-content-content .alert-warning,
html[data-theme] .am-body-content-content .alert-danger,
html[data-theme] .am-body-content-content .alert-success {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  color: var(--kt-text) !important;
}

/* vendor reserves 80px at the top of .page-wrapper for the fixed header —
   match that exactly here so there is NO dark seam between header & content */
html[data-theme] .topbar,
html[data-theme] .topbar .top-navbar,
html[data-theme] .navbar-collapse,
html[data-theme] .navbar-header {
  min-height: 80px;
  height: 80px;
}

html[data-theme] .topbar .top-navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

html[data-theme] .navbar-header {
  width: auto !important;
  min-width: 0;
  flex: 0 1 auto;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border: none !important;
}

#main-wrapper[data-layout=vertical] .topbar .top-navbar .navbar-header[data-logobg=skin6],
#main-wrapper[data-layout=horizontal] .topbar .top-navbar .navbar-header[data-logobg=skin6] {
  background: var(--kt-bg) !important;
}

#main-wrapper[data-layout=vertical] .topbar .navbar-collapse[data-navbarbg=skin6],
#main-wrapper[data-layout=vertical] .topbar[data-navbarbg=skin6],
#main-wrapper[data-layout=horizontal] .topbar .navbar-collapse[data-navbarbg=skin6],
#main-wrapper[data-layout=horizontal] .topbar[data-navbarbg=skin6] {
  background: var(--kt-bg) !important;
}

html[data-theme] .topbar .top-navbar .navbar-header {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}

html[data-theme] .navbar-collapse {
  flex: 1 1 auto;
  min-width: 0;
}

.kt-brand-lockup {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  min-height: 80px;
  text-decoration: none !important;
  padding: 0 10px 0 14px !important;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.kt-brand-lockup .kt-header-logo-mark {
  flex: none;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 11px;
  box-shadow: none;
  border: 1px solid rgba(255, 106, 26, 0.28);
  background: linear-gradient(145deg, rgba(255, 106, 26, 0.18), rgba(255, 106, 26, 0.04));
}

.kt-brand-lockup .kt-header-logo-mark::before {
  inset: 8px;
  border-left-width: 5px;
}

.kt-brand-lockup .kt-header-logo-mark::after {
  inset: 14px 11px 9px 18px;
  border-left-width: 4px;
}

.kt-header-brand-text {
  display: flex;
  flex-direction: column;
  gap: 1px;
  line-height: 1.05;
  min-width: 0;
}

.kt-header-brand-text strong {
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.2px;
  color: var(--kt-orange-600);
  white-space: nowrap;
}

.kt-header-brand-text > span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.65px;
  text-transform: uppercase;
  color: var(--kt-text-muted);
  white-space: nowrap;
}

#main-wrapper[data-sidebartype=mini-sidebar] .kt-header-brand-text {
  display: none;
}

.kt-header-logo-mark {
  position: relative;
  width: 54px;
  height: 54px;
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgba(255, 106, 26, 0.18), rgba(255, 106, 26, 0.04)),
    linear-gradient(145deg, #17181d, #0d0d10);
  border: 1px solid rgba(255, 106, 26, 0.3);
  box-shadow: 0 14px 32px rgba(241, 84, 31, 0.18);
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.kt-header-logo-mark::before,
.kt-header-logo-mark::after {
  content: "";
  position: absolute;
  inset: 10px;
  border-left: 6px solid var(--kt-orange-600);
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  transform: skewY(15deg);
  border-radius: 8px;
}

.kt-header-logo-mark::after {
  inset: 18px 14px 12px 24px;
  border-left-width: 5px;
  transform: skewY(-18deg);
  opacity: 0.92;
}

.kt-header-logo-image {
  position: static;
  z-index: auto;
  display: block;
  width: auto;
  max-width: 176px;
  height: auto;
  max-height: 46px;
  object-fit: contain;
}

.kt-brand-copy {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
  min-width: 0;
}

.kt-brand-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--kt-text-muted);
}

.kt-brand-title {
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.6px;
  color: var(--kt-orange-600);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.kt-header-meta {
  align-items: center;
  min-width: 0;
}

.kt-header-status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: var(--kt-surface-2);
  border: 1px solid var(--kt-border);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  max-width: 100%;
}

.kt-status-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg, #22c55e, #16a34a);
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.15);
}

.kt-profile-trigger {
  display: inline-flex !important;
  align-items: center;
  padding: 8px 14px !important;
  border-radius: 18px;
  background: var(--kt-surface-2);
  border: 1px solid var(--kt-border);
  max-width: 100%;
  gap: 10px;
  min-height: 58px;
}

.kt-profile-trigger img {
  width: 36px;
  height: 36px;
  object-fit: cover;
  border: 2px solid rgba(241, 84, 31, 0.2);
  border-radius: 12px !important;
}

.kt-profile-copy {
  line-height: 1.2;
}

.kt-hero-strip {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding: 26px 28px;
  background:
    radial-gradient(circle at top right, rgba(255, 106, 26, 0.18), transparent 34%),
    linear-gradient(135deg, var(--kt-surface), var(--kt-surface-2));
  border: 1px solid var(--kt-border);
  border-radius: 22px;
  box-shadow: var(--kt-shadow);
}

.kt-hero-copy {
  max-width: 680px;
}

.kt-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding: 7px 12px;
  border-radius: 999px;
  background: var(--kt-orange-soft);
  color: var(--kt-orange-700);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.kt-hero-strip h2 {
  margin: 0 0 8px;
  font-size: clamp(28px, 3.2vw, 38px);
  line-height: 1.05;
  font-weight: 900;
  color: var(--kt-text) !important;
}

.kt-hero-copy p {
  margin: 0;
  max-width: 600px;
  font-size: 14px;
  line-height: 1.7;
}

.kt-hero-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 12px;
  align-self: center;
  min-width: 280px;
}

.kt-hero-stat {
  padding: 16px 18px;
  border-radius: 16px;
  background: var(--kt-black);
  color: #fff;
  box-shadow: 0 12px 30px rgba(5, 5, 5, 0.2);
}

html[data-theme="dark"] .kt-hero-stat {
  background: linear-gradient(135deg, #0f1014, #181b20);
}

.kt-hero-stat strong {
  display: block;
  font-size: 15px;
  font-weight: 800;
  color: #fff;
}

html[data-theme] .container-fluid {
  padding: 0 26px 24px;
}

html[data-theme] .page-breadcrumb {
  padding: 22px 26px 18px;
}

html[data-theme] .am-body-content {
  background: transparent !important;
}

html[data-theme="dark"] body,
html[data-theme="dark"] #main-wrapper,
html[data-theme="dark"] .page-wrapper,
html[data-theme="dark"] .container-fluid,
html[data-theme="dark"] .am-body-content,
html[data-theme="dark"] .am-body-content-content {
  background: var(--kt-bg) !important;
  color: var(--kt-text) !important;
}

html[data-theme="dark"] .topbar,
html[data-theme="dark"] .topbar .top-navbar,
html[data-theme="dark"] .navbar-collapse,
html[data-theme="dark"] .navbar-header,
html[data-theme="dark"] .left-sidebar,
html[data-theme="dark"] .scroll-sidebar {
  background: var(--kt-bg) !important;
}

html[data-theme="dark"] .page-breadcrumb,
html[data-theme="dark"] .kt-hero-strip,
html[data-theme="dark"] .am-widget,
html[data-theme="dark"] .am-grid-container,
html[data-theme="dark"] .am-layout-two-coll,
html[data-theme="dark"] .am-receipt,
html[data-theme="dark"] .am-form,
html[data-theme="dark"] .am-body-content-content > form,
html[data-theme="dark"] .am-body-content-content > .am-form,
html[data-theme="dark"] .am-body-content-content .card,
html[data-theme="dark"] .am-body-content-content .box-content,
html[data-theme="dark"] .am-body-content-content > .container,
html[data-theme="dark"] .dis_pimg {
  background: #171a20 !important;
  color: var(--kt-text) !important;
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .am-block,
html[data-theme="dark"] .am-block .alert-success,
html[data-theme="dark"] .alert,
html[data-theme="dark"] .alert-info,
html[data-theme="dark"] .alert-warning,
html[data-theme="dark"] .alert-danger,
html[data-theme="dark"] .alert-success {
  background: #171a20 !important;
  color: var(--kt-text) !important;
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .am-body-content-content input[type="text"],
html[data-theme="dark"] .am-body-content-content input[type="password"],
html[data-theme="dark"] .am-body-content-content input[type="email"],
html[data-theme="dark"] .am-body-content-content input[type="number"],
html[data-theme="dark"] .am-body-content-content select,
html[data-theme="dark"] .am-body-content-content textarea,
html[data-theme="dark"] .am-form input[type="text"],
html[data-theme="dark"] .am-form input[type="password"],
html[data-theme="dark"] .am-form input[type="email"],
html[data-theme="dark"] .am-form input[type="number"],
html[data-theme="dark"] .am-form select,
html[data-theme="dark"] .am-form textarea,
html[data-theme="dark"] #searchInput {
  background: #111318 !important;
  color: #f2f3f5 !important;
  border-color: #313640 !important;
}

html[data-theme="dark"] #searchInput::placeholder,
html[data-theme="dark"] .am-body-content-content input::placeholder,
html[data-theme="dark"] .am-body-content-content textarea::placeholder {
  color: #9aa0aa !important;
}

html[data-theme="dark"] .am-grid th,
html[data-theme="dark"] .am-grid tr.am-grid-row > td,
html[data-theme="dark"] .am-grid tr.am-grid-row.odd td,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.sorted,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expandable-data,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expanded,
html[data-theme="dark"] .am-receipt td,
html[data-theme="dark"] ul.am-tabs,
html[data-theme="dark"] ul.am-tabs > li,
html[data-theme="dark"] ul.am-tabs a,
html[data-theme="dark"] .am-filter-wrap {
  background: #171a20 !important;
  color: var(--kt-text) !important;
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .kt-header-status,
html[data-theme="dark"] .kt-profile-trigger,
html[data-theme="dark"] .kt-theme-toggle,
html[data-theme="dark"] .kt-sidebar-help,
html[data-theme="dark"] .kt-hero-badge {
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .kt-sidebar-help {
  background: rgba(255, 106, 26, 0.08) !important;
}

html[data-theme="dark"] .kt-header-status,
html[data-theme="dark"] .kt-profile-trigger span,
html[data-theme="dark"] .kt-profile-trigger .text-dark,
html[data-theme="dark"] .breadcrumb,
html[data-theme="dark"] .breadcrumb-item,
html[data-theme="dark"] .am-body-content-content .comment,
html[data-theme="dark"] .am-body-content-content .small,
html[data-theme="dark"] .am-body-content-content small {
  color: #c2c8d2 !important;
}

html[data-theme="dark"] .kt-brand-eyebrow {
  color: #b6bec9 !important;
}

html[data-theme="dark"] .kt-brand-title {
  color: #ff7a33 !important;
}

html[data-theme="dark"] .kt-hero-copy p,
html[data-theme="dark"] .kt-hero-stat-label {
  color: #c2c8d2 !important;
}

html[data-theme="dark"] .kt-hero-strip h2,
html[data-theme="dark"] .am-widget h2,
html[data-theme="dark"] .card-title,
html[data-theme="dark"] .page-title,
html[data-theme="dark"] .page-breadcrumb h2,
html[data-theme="dark"] .page-breadcrumb h3,
html[data-theme="dark"] .text-dark {
  color: #f7f8fa !important;
}

html[data-theme] .am-body-content-content > .row,
html[data-theme] .am-body-content-content > .container,
html[data-theme] .am-body-content-content > .card,
html[data-theme] .am-body-content-content > .am-grid-container,
html[data-theme] .am-body-content-content > form,
html[data-theme] .am-body-content-content > .am-form {
  margin-bottom: 20px;
}

html[data-theme] .am-grid-container,
html[data-theme] .am-filter-wrap,
html[data-theme] .am-layout-two-coll,
html[data-theme] .am-receipt,
html[data-theme] .am-form,
html[data-theme] .am-body-content-content > form,
html[data-theme] .am-body-content-content > .am-form,
html[data-theme] .am-body-content-content .card,
html[data-theme] .am-body-content-content .box-content {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--kt-shadow);
}

html[data-theme] .am-grid-container,
html[data-theme] .am-layout-two-coll,
html[data-theme] .am-receipt,
html[data-theme] .am-form,
html[data-theme] .am-body-content-content > form,
html[data-theme] .am-body-content-content > .am-form {
  padding: 18px;
}

html[data-theme] .am-grid th,
html[data-theme] .am-grid td,
html[data-theme] .am-receipt td,
html[data-theme] .am-filter-wrap,
html[data-theme] ul.am-tabs a {
  border-color: var(--kt-border) !important;
}

html[data-theme] .am-grid th,
html[data-theme] .am-grid tr.am-grid-row > td,
html[data-theme] .am-receipt td,
html[data-theme] ul.am-tabs,
html[data-theme] ul.am-tabs > li,
html[data-theme] ul.am-tabs a {
  background: var(--kt-surface) !important;
  color: var(--kt-text) !important;
}

html[data-theme] .am-grid tr.am-grid-row.odd td,
html[data-theme] .am-grid tr.am-grid-row > td.sorted,
html[data-theme] .am-grid tr.am-grid-row > td.expandable-data,
html[data-theme] .am-grid tr.am-grid-row > td.expanded,
html[data-theme] .am-filter-wrap,
html[data-theme] ul.am-tabs,
html[data-theme] ul.am-tabs > li {
  background: var(--kt-surface-2) !important;
}

html[data-theme] ul.am-tabs a:hover,
html[data-theme] ul.am-tabs li.active a,
html[data-theme] .am-pagination .am-pagination-current,
html[data-theme] .am-pagination a:hover {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange)) !important;
  color: #fff !important;
  border-color: transparent !important;
}

html[data-theme] .am-pagination a {
  background: var(--kt-surface) !important;
  color: var(--kt-text) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 10px !important;
}

html[data-theme] .am-form fieldset,
html[data-theme] .am-form div.am-row {
  background: transparent !important;
  border-color: var(--kt-border) !important;
}

html[data-theme] .am-form .am-element-title label,
html[data-theme] .am-form .am-element label,
html[data-theme] .am-form legend,
html[data-theme] .am-form .am-row .am-element-title {
  color: var(--kt-text) !important;
}

html[data-theme] .am-form input[type="text"],
html[data-theme] .am-form input[type="password"],
html[data-theme] .am-form input[type="email"],
html[data-theme] .am-form input[type="number"],
html[data-theme] .am-form select,
html[data-theme] .am-form textarea,
html[data-theme] .am-body-content input[type="text"],
html[data-theme] .am-body-content input[type="password"],
html[data-theme] .am-body-content input[type="email"],
html[data-theme] .am-body-content input[type="number"],
html[data-theme] .am-body-content select,
html[data-theme] .am-body-content textarea {
  min-height: 46px;
  background: var(--kt-surface-2) !important;
  color: var(--kt-text) !important;
}

html[data-theme] .am-form input::placeholder,
html[data-theme] .am-body-content input::placeholder,
html[data-theme] .am-body-content textarea::placeholder {
  color: var(--kt-text-muted) !important;
}

html[data-theme] .dis_pimg {
  padding: 12px !important;
  border-radius: 18px !important;
  overflow: hidden;
}

html[data-theme] .dis_pimg img {
  height: 110px !important;
  object-fit: contain;
  border-radius: 12px;
  background: var(--kt-surface-2);
}

.kt-dashboard-grid {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 18px;
  margin-bottom: 24px;
}

.kt-dashboard-panel {
  background: linear-gradient(180deg, #13151b 0%, #0f1116 100%);
  border: 1px solid rgba(255, 106, 26, 0.22);
  border-radius: 24px;
  padding: 24px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
  color: #fff;
}

.kt-dashboard-profile-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.kt-dashboard-logo {
  width: 72px;
  height: 72px;
  object-fit: contain;
  border-radius: 50%;
  background: #fff;
  padding: 8px;
  box-shadow: 0 0 0 4px rgba(241, 84, 31, 0.18);
}

.kt-dashboard-profile-top h3 {
  margin: 0 0 4px;
  font-size: 34px;
  font-weight: 800;
  color: #fff !important;
}

.kt-dashboard-handle,
.kt-dashboard-meta,
.kt-dashboard-profile-copy,
.kt-dashboard-time-copy p,
.kt-dashboard-time-label,
.kt-dashboard-news-item span {
  color: rgba(255, 255, 255, 0.76) !important;
}

.kt-dashboard-badge {
  margin-left: auto;
  padding: 7px 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--kt-orange), var(--kt-orange-700));
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.kt-dashboard-meta {
  display: grid;
  gap: 8px;
  margin-bottom: 16px;
}

.kt-dashboard-meta i {
  color: #ff6a1a;
  margin-right: 8px;
}

.kt-dashboard-profile-copy {
  font-size: 14px;
  line-height: 1.7;
}

.kt-dashboard-time {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 106, 26, 0.28);
  margin-bottom: 18px;
}

.kt-dashboard-time-badge {
  display: inline-block;
  margin-bottom: 10px;
  color: var(--kt-orange);
  font-weight: 800;
  font-size: 28px;
}

.kt-dashboard-time-copy p {
  margin: 0 0 8px;
}

.kt-dashboard-time-copy strong {
  font-size: 44px;
  font-weight: 900;
  color: #fff !important;
}

/* --- stat chips row (100+ tools / uptime / support) --- */
.kt-dashboard-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 14px;
}

.kt-stat-chip {
  display: grid;
  gap: 2px;
  padding: 14px 16px;
  text-align: center;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 106, 26, 0.22);
}

.kt-stat-value {
  font-size: 24px;
  font-weight: 900;
  background: linear-gradient(100deg, var(--kt-orange), #ffb27a);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.kt-stat-caption {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.62) !important;
}

/* --- reseller CTA banner --- */
.kt-renew-alerts {
  display: grid;
  gap: 10px;
  margin-bottom: 16px;
}

.kt-renew-alert {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  padding: 14px 18px;
  border-radius: 16px;
  border: 1px solid transparent;
}

.kt-renew-alert-icon {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  font-size: 18px;
}

.kt-renew-alert-body {
  flex: 1;
  min-width: 200px;
  display: grid;
  gap: 3px;
}

.kt-renew-alert-body strong {
  font-size: 14px;
  font-weight: 800;
  color: inherit !important;
}

.kt-renew-alert-body span {
  font-size: 12.5px;
  line-height: 1.5;
  opacity: 0.9;
  color: inherit !important;
}

.kt-renew-alert-btn {
  flex: none;
  padding: 10px 16px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.kt-renew-alert-btn:hover {
  transform: translateY(-1px);
}

.kt-renew-alert--warning {
  background: linear-gradient(135deg, rgba(234, 179, 8, 0.14), rgba(234, 179, 8, 0.05));
  border-color: rgba(234, 179, 8, 0.35);
  color: #fde68a !important;
}

.kt-renew-alert--warning .kt-renew-alert-icon {
  background: rgba(234, 179, 8, 0.2);
  color: #fbbf24 !important;
}

.kt-renew-alert--warning .kt-renew-alert-btn {
  background: linear-gradient(135deg, #eab308, #ca8a04);
  color: #1a1a1a !important;
  box-shadow: 0 8px 18px rgba(234, 179, 8, 0.25);
}

.kt-renew-alert--urgent {
  background: linear-gradient(135deg, rgba(241, 84, 31, 0.18), rgba(241, 84, 31, 0.06));
  border-color: rgba(241, 84, 31, 0.4);
  color: #fed7aa !important;
}

.kt-renew-alert--urgent .kt-renew-alert-icon {
  background: rgba(241, 84, 31, 0.22);
  color: var(--kt-orange) !important;
}

.kt-renew-alert--urgent .kt-renew-alert-btn {
  background: linear-gradient(135deg, var(--kt-orange), var(--kt-orange-700));
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(241, 84, 31, 0.3);
}

.kt-renew-alert--expired {
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.16), rgba(220, 38, 38, 0.06));
  border-color: rgba(220, 38, 38, 0.35);
  color: #fecaca !important;
}

.kt-renew-alert--expired .kt-renew-alert-icon {
  background: rgba(220, 38, 38, 0.2);
  color: #f87171 !important;
}

.kt-renew-alert--expired .kt-renew-alert-btn {
  background: linear-gradient(135deg, #dc2626, #991b1b);
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(220, 38, 38, 0.28);
}

html[data-theme="light"] .kt-renew-alert--warning {
  color: #854d0e !important;
}

html[data-theme="light"] .kt-renew-alert--urgent {
  color: #9a3412 !important;
}

html[data-theme="light"] .kt-renew-alert--expired {
  color: #991b1b !important;
}

@media (max-width: 640px) {
  .kt-renew-alert { flex-direction: column; align-items: flex-start; }
  .kt-renew-alert-btn { width: 100%; text-align: center; }
}

.kt-dashboard-cta {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
  margin-bottom: 12px;
  border-radius: 18px;
  overflow: hidden;
  text-decoration: none !important;
  background: linear-gradient(120deg, rgba(241, 84, 31, 0.92), rgba(216, 67, 15, 0.96));
  border: 1px solid rgba(255, 178, 122, 0.4);
  box-shadow: 0 16px 32px rgba(241, 84, 31, 0.3);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.kt-dashboard-cta:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 40px rgba(241, 84, 31, 0.42);
}

.kt-dashboard-cta-glow {
  position: absolute;
  top: -40%;
  right: -10%;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.28), transparent 65%);
  pointer-events: none;
}

.kt-dashboard-cta-copy { position: relative; display: grid; gap: 4px; min-width: 0; }

.kt-dashboard-cta-kicker {
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.9px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85) !important;
}

.kt-dashboard-cta-copy strong {
  font-size: 19px;
  line-height: 1.25;
  color: #fff !important;
}

.kt-dashboard-cta-copy > span:last-child {
  font-size: 12.5px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.82) !important;
}

.kt-dashboard-cta-arrow {
  position: relative;
  flex: none;
  margin-left: auto;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  transition: transform 0.2s ease;
}

.kt-dashboard-cta:hover .kt-dashboard-cta-arrow { transform: translateX(4px); }

/* --- whatsapp channel strip --- */
.kt-dashboard-channel {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  border-radius: 18px;
  text-decoration: none !important;
  background: rgba(37, 211, 102, 0.08);
  border: 1px solid rgba(37, 211, 102, 0.32);
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.kt-dashboard-channel:hover { transform: translateY(-3px); border-color: #25d366; }

.kt-dashboard-channel-icon {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #25d366;
  color: #fff;
  font-size: 20px;
}

.kt-dashboard-channel-copy { display: grid; gap: 2px; min-width: 0; }
.kt-dashboard-channel-copy strong { color: #fff !important; font-size: 15px; }
.kt-dashboard-channel-copy span { color: rgba(255, 255, 255, 0.68) !important; font-size: 12.5px; }
.kt-dashboard-channel .kt-dashboard-cta-arrow { background: rgba(37, 211, 102, 0.2); color: #25d366; }

.kt-member-marquee {
  margin-bottom: 22px;
  border: 1px solid var(--kt-border);
  border-radius: 18px;
  overflow: hidden;
  background: var(--kt-surface);
}

.kt-member-marquee-track {
  overflow: hidden;
  white-space: nowrap;
}

.kt-member-marquee-text {
  display: inline-block;
  margin: 0;
  padding: 12px 0;
  animation: ktMarquee 35s linear infinite;
  color: var(--kt-text) !important;
  font-weight: 600;
}

.kt-member-marquee-text a {
  color: var(--kt-orange-600) !important;
}

@keyframes ktMarquee {
  0% { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}

.kt-resources-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 22px;
}

.kt-search-wrap {
  flex: 1 1 320px;
}

.kt-category-filter {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.kt-category-pill {
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid var(--kt-border);
  border-radius: 999px;
  background: var(--kt-surface);
  color: var(--kt-text);
  font-size: 13px;
  font-weight: 700;
}

.kt-category-pill.active,
.kt-category-pill:hover {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff;
  border-color: transparent;
}

.kt-product-card {
  position: relative;
  height: 100%;
  padding: 0 !important;
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 22px !important;
  overflow: hidden;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.kt-product-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 106, 26, 0.5) !important;
  box-shadow: 0 20px 40px rgba(255, 106, 26, 0.14);
}

.kt-product-thumb {
  display: block;
  padding: 18px;
  background: linear-gradient(180deg, var(--kt-surface-2), var(--kt-surface));
}

.kt-product-thumb img {
  width: 100%;
  height: 150px !important;
  object-fit: contain;
}

.kt-product-body {
  display: flex;
  flex-direction: column;
  align-items: center;      /* centre everything in the card */
  text-align: center;
  gap: 10px;
  padding: 18px 18px 20px;
}

/* stack category + ACTIVE badges centred (like the reference tool card) */
.kt-product-topline {
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.kt-product-category {
  align-self: center;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--kt-orange-soft);
  color: var(--kt-orange-700);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

/* product title with blue verified tick */
.kt-product-title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex-wrap: wrap;
}
.kt-verified {
  color: #1d9bf0;
  font-size: 16px;
}
.kt-product-actions { width: 100%; }
.kt-product-title { width: 100%; }

/* pin / favourite button (top-right of each card) */
.kt-pin-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--kt-border);
  background: var(--kt-surface);
  color: var(--kt-text-muted);
  cursor: pointer;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: rotate(30deg);
  transition: all 0.16s ease;
}
.kt-pin-btn:hover {
  border-color: var(--kt-orange);
  color: var(--kt-orange-600);
  transform: rotate(30deg) scale(1.08);
}
.resource-item.is-pinned .kt-pin-btn {
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  border-color: transparent;
  color: #fff;
  transform: rotate(0deg);
  box-shadow: 0 8px 16px rgba(241, 84, 31, 0.34);
}
.resource-item.is-pinned .kt-product-card {
  border-color: var(--kt-orange) !important;
  box-shadow: 0 0 0 1px var(--kt-orange), 0 16px 30px rgba(241, 84, 31, 0.16) !important;
}
/* small "Pinned" ribbon on pinned cards */
.resource-item.is-pinned .kt-product-card::after {
  content: "\f08d  PINNED";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
  padding: 4px 9px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff;
  font-size: 9.5px;
  letter-spacing: 0.5px;
}

/* ==========================================================================
   Login page brand lockup (icon square + text, like the reference)
   ========================================================================== */
.kt-login-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px;
}
.kt-login-brand-mark {
  flex: none;
  width: 58px;
  height: 58px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(140deg, var(--kt-orange), var(--kt-orange-700));
  box-shadow: 0 12px 26px rgba(241, 84, 31, 0.4);
}
.kt-login-brand-mark img {
  width: 74%;
  height: 74%;
  object-fit: contain;
  border-radius: 10px;
  background: #fff;
  padding: 4px;
}
.kt-login-brand-text { display: flex; flex-direction: column; line-height: 1.1; }
.kt-login-brand-name {
  font-size: 26px;
  font-weight: 900;
  letter-spacing: -0.3px;
  color: var(--kt-text);
}
.kt-login-brand-name span { color: var(--kt-orange-600); }
.kt-login-brand-tag {
  margin-top: 3px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: var(--kt-text-muted);
}

.kt-product-title {
  color: var(--kt-text) !important;
  text-decoration: none !important;
  min-height: 48px;
}

.kt-product-title strong {
  color: inherit !important;
  font-size: 16px;
  line-height: 1.45;
}

.kt-product-actions {
  margin-top: auto;
}

#widget-member-main-subscriptions .am-active-invoice {
  background: linear-gradient(180deg, var(--kt-surface), var(--kt-surface-2));
  border: 1px solid var(--kt-border);
  border-radius: 16px;
  padding: 16px 18px;
  margin-bottom: 14px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

#widget-member-main-subscriptions .am-active-invoice-product,
#widget-member-main-subscriptions .am-active-invoice-num {
  display: block;
  color: var(--kt-text) !important;
  font-weight: 800;
  font-size: 16px;
}

#widget-member-main-subscriptions .am-active-invoice-terms,
#widget-member-main-subscriptions .am-active-invoice-cancel,
#widget-member-main-subscriptions .am-active-invoice-product-list,
#widget-member-main-subscriptions .am-active-invoice-product-list li {
  color: var(--kt-text-muted) !important;
}

#widget-member-main-subscriptions .am-active-invoice-product-list li::marker {
  color: var(--kt-orange-600);
}

html[data-theme] .am-body-content-content form,
html[data-theme] .am-body-content-content .am-form,
html[data-theme] .am-body-content-content .am-layout-two-coll {
  background: var(--kt-surface) !important;
}

html[data-theme] .am-body-content-content form label,
html[data-theme] .am-body-content-content form legend,
html[data-theme] .am-body-content-content form .am-element-title,
html[data-theme] .am-body-content-content form .am-element-title label,
html[data-theme] .am-body-content-content form p,
html[data-theme] .am-body-content-content form span,
html[data-theme] .am-body-content-content form div,
html[data-theme] .am-body-content-content form strong,
html[data-theme] .am-body-content-content .am-helpdesk *,
html[data-theme] .am-body-content-content .am-layout-two-coll *,
html[data-theme] .am-body-content-content .am-ticket *,
html[data-theme] .am-body-content-content .am-form *,
html[data-theme] .am-body-content-content .am-form label {
  color: var(--kt-text) !important;
}

html[data-theme="dark"] .am-body-content-content form,
html[data-theme="dark"] .am-body-content-content .am-form,
html[data-theme="dark"] .am-body-content-content .am-layout-two-coll,
html[data-theme="dark"] .am-body-content-content .am-helpdesk *,
html[data-theme="dark"] .am-body-content-content .am-ticket * {
  color: #f2f3f5 !important;
}

html[data-theme="dark"] .am-body-content-content form label,
html[data-theme="dark"] .am-body-content-content form legend,
html[data-theme="dark"] .am-body-content-content form .comment,
html[data-theme="dark"] .am-body-content-content .am-form .comment {
  color: #d0d5dd !important;
}

html[data-theme="dark"] .am-body-content-content form a,
html[data-theme="dark"] .am-body-content-content .am-helpdesk a {
  color: #ff8a4c !important;
}

/* ==========================================================================
   Focused member-area premium refresh
   ========================================================================== */
/* header logo image fallback (login/signup pages) */
.kt-header-logo-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  min-width: 0;
  padding: 0;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.kt-header-logo-image {
  display: block;
  width: auto;
  max-width: 176px;
  height: auto;
  max-height: 46px;
  object-fit: contain;
}

/* nuke every possible shadow source on the header logo (vendor + earlier rules) */
html[data-theme] .kt-brand-lockup,
html[data-theme] .kt-header-logo-wrap,
html[data-theme] .navbar-brand,
html[data-theme] .navbar-brand img {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  text-shadow: none !important;
}

html[data-theme] .kt-header-logo-image {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  filter: none !important;
}

/* keep the whole brand vertically centred inside the 80px header band */
.kt-brand-lockup {
  height: 80px;
  min-height: 80px;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center;
  flex: none;
  max-width: 100%;
  width: 100%;
}

html[data-theme] .navbar-header {
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
}

html[data-theme] .navbar-header .kt-brand-lockup {
  width: 100%;
  justify-content: flex-start;
}

.kt-hero-stat-link {
  display: block;
  text-decoration: none !important;
  border: 1px solid transparent;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.kt-hero-stat-link:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 34px rgba(255, 106, 26, 0.22);
  border-color: rgba(255, 106, 26, 0.38);
}

.kt-dashboard-logo {
  width: auto;
  max-width: 170px;
  height: 52px;
  object-fit: contain;
  border-radius: 12px;
  background: #ffffff;         /* logo artwork has dark text — keep it on white */
  padding: 6px 12px;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
  box-sizing: content-box;
}

/* circular favicon avatar next to "Welcome Dear Client" — clean thin ring,
   no heavy drop shadow (matches the reference) */
.kt-dashboard-avatar {
  flex: none;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  padding: 7px;
  box-shadow: 0 0 0 3px rgba(241, 84, 31, 0.4);
}
.kt-dashboard-avatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
  filter: none;
}
.kt-dashboard-profile-id { min-width: 0; }

/* ---- Your Subscriptions cards (rendered in PHP from aMember data) ---- */
.kt-sub-section { margin-top: 18px; }
.kt-sub-title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 2px;
  font-size: 20px;
  font-weight: 800;
  color: #fff !important;
}
.kt-sub-title i { color: var(--kt-orange); }
.kt-sub-subtitle {
  margin: 0 0 14px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6) !important;
}
.kt-sub-list { display: grid; gap: 12px; }
.kt-sub-card {
  padding: 16px 18px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 106, 26, 0.22);
  transition: border-color 0.18s ease, transform 0.18s ease;
}
.kt-sub-card:hover { border-color: rgba(255, 106, 26, 0.5); transform: translateY(-2px); }
.kt-sub-card-jump {
  cursor: pointer;
}
.kt-sub-card-jump:focus-visible {
  outline: 2px solid var(--kt-orange);
  outline-offset: 2px;
}
.resource-item.kt-tool-jump-highlight .kt-product-card {
  border-color: var(--kt-orange) !important;
  box-shadow: 0 0 0 3px rgba(255, 106, 26, 0.35), 0 18px 36px rgba(255, 106, 26, 0.18) !important;
  transform: translateY(-4px);
  transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}
.kt-sub-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
.kt-sub-name { font-size: 18px; font-weight: 800; color: #fff !important; line-height: 1.3; }
.kt-sub-access {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff !important;
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(241, 84, 31, 0.32);
}
.kt-sub-status {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  font-size: 14px;
  color: rgba(255, 255, 255, 0.72) !important;
}
.kt-sub-status > i { color: var(--kt-orange); }
.kt-sub-status-label { font-weight: 600; }
.kt-sub-status-badge {
  display: inline-flex;
  padding: 5px 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff !important;
  font-size: 12px;
  font-weight: 800;
}

.kt-dashboard-news-item {
  display: block;
  text-decoration: none !important;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.kt-dashboard-news-item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 106, 26, 0.42);
  box-shadow: 0 16px 28px rgba(0, 0, 0, 0.2);
}

.kt-dashboard-news-kicker {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 106, 26, 0.14);
  color: #ffb17e !important;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.kt-search-wrap {
  position: relative;
}

.kt-search-wrap::before {
  content: "\f002";
  position: absolute;
  top: 50%;
  left: 18px;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 13px;
  color: var(--kt-text-muted);
  pointer-events: none;
}

html[data-theme] #searchInput {
  padding-left: 44px !important;
}

.kt-category-filter {
  padding: 8px;
  border: 1px solid var(--kt-border);
  border-radius: 18px;
  background:
    radial-gradient(circle at top left, rgba(255, 106, 26, 0.12), transparent 38%),
    var(--kt-surface);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
}

.kt-category-pill {
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid transparent;
  background: transparent;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.kt-category-pill.active,
.kt-category-pill:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(241, 84, 31, 0.22);
}

.kt-category-pill-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  margin-left: 8px;
  padding: 0 7px;
  border-radius: 999px;
  background: var(--kt-orange-soft);
  color: var(--kt-orange-700);
  font-size: 11px;
  font-weight: 800;
}

.kt-category-pill.active .kt-category-pill-count,
.kt-category-pill:hover .kt-category-pill-count {
  background: rgba(255, 255, 255, 0.24);
  color: #fff;
}

/* product card: live badge + gradient launch button */
.kt-product-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.3);
  color: #16a34a !important;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

html[data-theme="dark"] .kt-product-badge { color: #4ade80 !important; }

.kt-product-badge-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.22);
  animation: ktPulse 1.8s ease-in-out infinite;
}

@keyframes ktPulse {
  0%, 100% { box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.22); }
  50% { box-shadow: 0 0 0 6px rgba(34, 197, 94, 0.08); }
}

.kt-product-launch {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  border-radius: 12px;
  text-decoration: none !important;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff !important;
  font-weight: 700;
  font-size: 14px;
  box-shadow: 0 10px 22px rgba(241, 84, 31, 0.28);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.kt-product-launch:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(241, 84, 31, 0.4);
  color: #fff !important;
}

.kt-product-title { min-height: 42px; }

/* category filter + search rely on toggling .hidden — this rule makes it work */
.resource-item.hidden { display: none !important; }

/* ==========================================================================
   Browse Categories panel — icon tiles (orange / black), replaces old pills
   ========================================================================== */
.kt-categories-panel {
  margin-bottom: 22px;
  padding: 26px;
  border: 1px solid var(--kt-border);
  border-radius: 26px;
  background:
    radial-gradient(circle at 20% -10%, rgba(255, 106, 26, 0.16), transparent 42%),
    radial-gradient(circle at 100% 120%, rgba(255, 106, 26, 0.1), transparent 40%),
    linear-gradient(180deg, var(--kt-surface), var(--kt-surface-2));
  box-shadow: 0 20px 44px rgba(15, 23, 42, 0.08);
}
html[data-theme="dark"] .kt-categories-panel {
  background:
    radial-gradient(circle at 20% -10%, rgba(255, 106, 26, 0.14), transparent 42%),
    radial-gradient(circle at 100% 120%, rgba(255, 106, 26, 0.08), transparent 40%),
    linear-gradient(180deg, #16171b, #101116);
}

.kt-categories-head { text-align: center; margin-bottom: 18px; }
.kt-categories-head h3 {
  margin: 0 0 4px;
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 900;
  color: var(--kt-text) !important;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.kt-categories-head h3 i { color: var(--kt-orange-600); }
.kt-categories-head p {
  margin: 0;
  color: var(--kt-text-muted) !important;
  font-size: 14px;
}

.kt-categories-panel .kt-search-wrap {
  max-width: 460px;
  margin: 0 auto 20px;
}

.kt-categories-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 14px;
}

.kt-cat-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 22px 16px 18px;
  text-align: center;
  border: 1.5px solid var(--kt-border);
  border-radius: 20px;
  background: var(--kt-surface);
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
html[data-theme="dark"] .kt-cat-tile { background: rgba(255, 255, 255, 0.02); }
.kt-cat-tile:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 106, 26, 0.5);
  box-shadow: 0 16px 30px rgba(241, 84, 31, 0.16);
}
.kt-cat-tile.active {
  border-color: var(--kt-orange);
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 106, 26, 0.16), transparent 60%),
    var(--kt-surface);
  box-shadow: 0 0 0 1px var(--kt-orange), 0 16px 34px rgba(241, 84, 31, 0.2);
}
html[data-theme="dark"] .kt-cat-tile.active {
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 106, 26, 0.22), transparent 60%),
    rgba(255, 106, 26, 0.05);
}

.kt-cat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-bottom: 8px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange-700));
  color: #fff;
  font-size: 22px;
  box-shadow: 0 10px 22px rgba(241, 84, 31, 0.32);
}

.kt-cat-name {
  font-size: 15px;
  font-weight: 800;
  color: var(--kt-text);
}
.kt-cat-sub {
  font-size: 11.5px;
  color: var(--kt-text-muted);
}
.kt-cat-count {
  margin-top: 8px;
  min-width: 30px;
  height: 26px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--kt-orange-600), var(--kt-orange));
  color: #fff;
  font-size: 12.5px;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(241, 84, 31, 0.3);
}

@media (max-width: 600px) {
  .kt-categories-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
  .kt-cat-icon { width: 48px; height: 48px; font-size: 19px; }
}

/* login page brand pill with the real logo on a white chip */
.kt-brand-pill-logo {
  padding: 10px 20px;
  background: #ffffff;
  border: 1px solid var(--kt-border);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.1);
}

.kt-login-logo {
  display: block;
  width: auto;
  max-width: 240px;
  height: 52px;
  object-fit: contain;
}

/* signup page logo on a white chip */
.kt-signup-brand {
  display: flex;
  justify-content: center;
  margin-bottom: 6px;
}

.kt-signup-logo {
  display: block;
  width: auto;
  max-width: 260px;
  height: 58px;
  object-fit: contain;
  padding: 8px 18px;
  border-radius: 14px;
  background: #ffffff;
  border: 1px solid var(--kt-border);
  box-sizing: content-box;
}

.kt-member-resource-shell {
  margin-bottom: 20px;
  padding: 26px;
  border: 1px solid var(--kt-border);
  border-radius: 26px;
  background:
    radial-gradient(circle at top right, rgba(255, 106, 26, 0.14), transparent 28%),
    linear-gradient(180deg, var(--kt-surface), var(--kt-surface-2));
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.08);
}

.kt-member-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.kt-member-section-kicker {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--kt-orange-soft);
  color: var(--kt-orange-700);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}

.kt-member-section-head h3 {
  margin: 0 0 6px;
  font-size: clamp(24px, 2.6vw, 34px);
  line-height: 1.05;
  color: var(--kt-text) !important;
}

.kt-member-section-head p {
  margin: 0;
  max-width: 760px;
  color: var(--kt-text-muted) !important;
  line-height: 1.7;
}

.kt-member-section-link {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  text-decoration: none !important;
  background: var(--kt-black);
  color: #fff !important;
  font-weight: 700;
  box-shadow: 0 14px 26px rgba(10, 10, 10, 0.14);
}

.kt-subscription-source {
  display: none !important;
}

.kt-subscription-showcase {
  display: grid;
  gap: 16px;
  margin-bottom: 6px;
}

.kt-subscription-showcase-empty {
  display: grid;
  gap: 8px;
  padding: 22px;
  border-radius: 22px;
  background: linear-gradient(135deg, #111318, #1b1f27);
  color: #fff;
  border: 1px solid rgba(255, 106, 26, 0.24);
}

.kt-subscription-empty-badge {
  display: inline-flex;
  width: fit-content;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 106, 26, 0.14);
  color: #ffb17e;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.kt-subscription-showcase .am-block {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
}

.kt-subscription-showcase .am-active-invoice {
  position: relative;
  height: 100%;
  padding: 22px 20px 18px;
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(255, 106, 26, 0.2), transparent 30%),
    linear-gradient(180deg, #101217, #171b22);
  border: 1px solid rgba(255, 106, 26, 0.18);
  box-shadow: 0 18px 36px rgba(6, 8, 12, 0.2);
  overflow: hidden;
}

.kt-subscription-showcase .am-active-invoice::before {
  content: "Active Plan";
  display: inline-flex;
  margin-bottom: 14px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 106, 26, 0.15);
  color: #ffb17e;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.kt-subscription-showcase .am-active-invoice-product,
.kt-subscription-showcase .am-active-invoice-num {
  display: block;
  color: #fff !important;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.35;
}

.kt-subscription-showcase .am-active-invoice-terms,
.kt-subscription-showcase .am-active-invoice-product-list,
.kt-subscription-showcase .am-active-invoice-product-list li,
.kt-subscription-showcase .am-active-invoice-cancel {
  color: rgba(255, 255, 255, 0.74) !important;
}

.kt-subscription-showcase .am-active-invoice-terms,
.kt-subscription-showcase .am-active-invoice-product-list {
  margin-top: 12px;
}

.kt-subscription-showcase .am-active-invoice-product-list {
  padding-left: 18px;
}

.kt-subscription-showcase .am-active-invoice-product-list li::marker {
  color: var(--kt-orange);
}

.kt-subscription-showcase .am-active-invoice a,
.kt-subscription-showcase .am-active-invoice-cancel a {
  color: #ffb17e !important;
}

/* generic safety net: whatever markup aMember uses for subscriptions,
   keep every bit of moved content readable inside the dark showcase */
.kt-subscription-showcase,
.kt-subscription-showcase * {
  color: #eef0f4 !important;
}
.kt-subscription-showcase .am-active-invoice-product,
.kt-subscription-showcase .am-active-invoice-num,
.kt-subscription-showcase strong,
.kt-subscription-showcase b { color: #ffffff !important; }
.kt-subscription-showcase a { color: #ffb17e !important; }
.kt-subscription-showcase #no_subs { color: #ffb17e !important; font-size: 18px !important; }
/* if aMember rendered a plain table, make it card-like and legible */
.kt-subscription-showcase table { width: 100%; border-collapse: collapse; }
.kt-subscription-showcase table td,
.kt-subscription-showcase table th {
  padding: 10px 12px !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}
.kt-subscription-showcase-empty * { color: inherit !important; }
.kt-subscription-showcase-empty .kt-subscription-empty-badge { color: #ffb17e !important; }

.kt-product-card {
  background:
    radial-gradient(circle at top right, rgba(255, 106, 26, 0.12), transparent 30%),
    linear-gradient(180deg, var(--kt-surface), var(--kt-surface-2)) !important;
  border: 1px solid rgba(255, 106, 26, 0.12) !important;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.1);
}

.kt-product-thumb {
  background:
    radial-gradient(circle at top center, rgba(255, 106, 26, 0.16), transparent 46%),
    linear-gradient(180deg, var(--kt-surface-2), var(--kt-surface));
}

.kt-product-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.kt-product-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(17, 24, 39, 0.06);
  color: var(--kt-text);
  font-size: 11px;
  font-weight: 700;
}

.kt-product-title strong {
  font-size: 18px;
  line-height: 1.4;
}

.kt-product-copy {
  margin: 0;
  color: var(--kt-text-muted) !important;
  font-size: 13px;
  line-height: 1.6;
}

.kt-product-actions .btn {
  min-height: 48px;
  font-weight: 800;
  letter-spacing: 0.2px;
  box-shadow: 0 14px 28px rgba(241, 84, 31, 0.22);
}

html[data-theme="dark"] .kt-category-filter {
  background:
    radial-gradient(circle at top left, rgba(255, 106, 26, 0.1), transparent 38%),
    #161920;
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .kt-member-resource-shell {
  background:
    radial-gradient(circle at top right, rgba(255, 106, 26, 0.1), transparent 28%),
    linear-gradient(180deg, #171a20, #12151b);
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .kt-product-card {
  background:
    radial-gradient(circle at top right, rgba(255, 106, 26, 0.1), transparent 30%),
    linear-gradient(180deg, #171a20, #12151b) !important;
  border-color: #2b3038 !important;
}

html[data-theme="dark"] .kt-product-thumb {
  background:
    radial-gradient(circle at top center, rgba(255, 106, 26, 0.12), transparent 46%),
    linear-gradient(180deg, #1a1e26, #151820);
}

html[data-theme="dark"] .kt-product-badge {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

@media (max-width: 991px) {
  .kt-header-meta {
    display: none !important;
  }

  .kt-profile-trigger {
    padding: 6px 10px !important;
  }

  .kt-brand-title {
    font-size: 18px;
  }

  .kt-hero-stats {
    grid-template-columns: 1fr;
    min-width: 200px;
  }

  .kt-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .kt-member-section-head {
    align-items: flex-start;
  }
}

@media (max-width: 767px) {
  html[data-theme] .topbar,
  html[data-theme] .topbar .top-navbar,
  html[data-theme] .navbar-header {
    min-height: 80px;
    height: 80px;
  }

  .kt-header-logo-image,
  .kt-header-logo-icon {
    max-width: 148px;
    max-height: 40px;
  }

  .kt-brand-lockup {
    gap: 10px;
    height: 80px;
    min-height: 80px;
    padding: 0 8px 0 10px;
    max-width: calc(100vw - 110px);
  }

  .kt-profile-trigger img {
    width: 36px;
    height: 36px;
  }

  .kt-dashboard-profile-top {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .kt-dashboard-profile-top h3 {
    font-size: 26px;
  }

  .kt-dashboard-logo {
    height: 44px;
  }

  .kt-dashboard-time-copy strong {
    font-size: 32px;
  }

  .kt-resources-toolbar {
    align-items: stretch;
  }

  .kt-hero-strip {
    padding: 22px 20px;
  }

  .kt-member-resource-shell {
    padding: 22px 18px;
  }
}

/* Hide the old dashboard-only popup so the new global popup is the only one shown */
.popup-overlay {
  display: none !important;
}

/* ==========================================================================
   Brand favicon + sidebar logo
   ========================================================================== */
.kt-brand-favicon,
.kt-sidebar-brand-icon {
  width: 38px;
  height: 38px;
  flex: none;
  object-fit: cover;
  object-position: center top;
  border-radius: 10px;
  display: block;
}

.kt-sidebar-brand {
  padding: 20px 18px 14px;
  border-bottom: 1px solid var(--kt-border);
}

.kt-sidebar-brand a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none !important;
  max-width: 100%;
}

.kt-sidebar-brand-text,
.kt-header-brand-text {
  display: flex;
  flex-direction: column;
  gap: 1px;
  line-height: 1.05;
  min-width: 0;
}

.kt-sidebar-brand-text strong,
.kt-header-brand-text strong {
  font-size: 14px;
  font-weight: 900;
  color: var(--kt-orange-600);
  letter-spacing: 0.1px;
}

.kt-sidebar-brand-text > span,
.kt-header-brand-text > span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.75px;
  text-transform: uppercase;
  color: var(--kt-text-muted);
}

.kt-brand-lockup {
  gap: 10px !important;
}

/* ==========================================================================
   Profile dropdown — clean card style
   ========================================================================== */
.kt-user-dropdown {
  min-width: 240px !important;
  padding: 10px !important;
  margin-top: 10px !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 16px !important;
  background: var(--kt-surface) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28) !important;
}

.kt-user-dropdown-head {
  padding: 10px 12px 12px;
  margin-bottom: 6px;
  border-bottom: 1px solid var(--kt-border);
}

.kt-user-dropdown-head strong {
  display: block;
  font-size: 14px;
  color: var(--kt-text);
}

.kt-user-dropdown-head span {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  color: var(--kt-text-muted);
  word-break: break-all;
}

.kt-user-dropdown .dropdown-item {
  display: flex !important;
  align-items: center;
  gap: 12px;
  padding: 11px 12px !important;
  margin: 2px 0;
  border-radius: 12px !important;
  font-weight: 600 !important;
  color: var(--kt-text) !important;
}

.kt-user-dropdown-icon {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--kt-orange-soft);
  color: var(--kt-orange-600);
  flex: none;
}

.kt-user-dropdown .dropdown-item:hover {
  background: rgba(255, 106, 26, 0.1) !important;
  color: var(--kt-orange-600) !important;
}

.kt-user-dropdown .kt-logout-item .kt-user-dropdown-icon {
  background: rgba(239, 68, 68, 0.12);
  color: #ef4444;
}

.kt-user-dropdown .kt-logout-item:hover {
  background: rgba(239, 68, 68, 0.1) !important;
  color: #ef4444 !important;
}

/* ==========================================================================
   Transaction history + payment grids — dark mode hardening
   ========================================================================== */
html[data-theme="dark"] .am-body-content-content .am-grid-container,
html[data-theme="dark"] .am-grid-container {
  background: var(--kt-surface) !important;
  border-color: var(--kt-border) !important;
}

html[data-theme="dark"] .am-grid-title,
html[data-theme="dark"] .am-grid-title-text,
html[data-theme="dark"] .am-grid-title-desc,
html[data-theme="dark"] .am-grid-back,
html[data-theme="dark"] .am-grid-total,
html[data-theme="dark"] .am-member-payment-history-items,
html[data-theme="dark"] .am-member-payment-history-paysys,
html[data-theme="dark"] .am-member-payment-history-amount {
  color: var(--kt-text) !important;
  background: transparent !important;
}

html[data-theme="dark"] .am-grid tr.am-grid-row > td,
html[data-theme="dark"] .am-grid tr.am-grid-row.even td,
html[data-theme="dark"] .am-grid tr.am-grid-row.odd td,
html[data-theme="dark"] .am-grid tr.am-grid-row.expanded td,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.sorted,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expandable-data,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expanded {
  background: var(--kt-surface) !important;
  color: var(--kt-text) !important;
  border-color: var(--kt-border) !important;
}

html[data-theme="dark"] .am-grid tr.am-grid-row.odd td {
  background: var(--kt-surface-2) !important;
}

html[data-theme="dark"] .am-grid th {
  background: var(--kt-surface-2) !important;
  color: var(--kt-text) !important;
}

html[data-theme="dark"] .am-grid a,
html[data-theme="dark"] .am-grid td a {
  color: #ff8a4c !important;
}

html[data-theme="dark"] .am-body-content-content .alert,
html[data-theme="dark"] .am-body-content-content .alert-success,
html[data-theme="dark"] .am-block .alert-success {
  background: var(--kt-surface) !important;
  border-color: var(--kt-border) !important;
  color: var(--kt-text) !important;
}

/* ==========================================================================
   Signup / checkout invoice summary — dark mode readable text
   ========================================================================== */
html[data-theme] .am-invoice-summary {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  border-radius: 14px !important;
  color: var(--kt-text) !important;
  box-shadow: var(--kt-shadow) !important;
}

html[data-theme] .am-invoice-summary table,
html[data-theme] .am-invoice-summary td,
html[data-theme] .am-invoice-summary th,
html[data-theme] .am-invoice-summary .am-invoice-summary-item-num,
html[data-theme] .am-invoice-summary .am-invoice-summary-price,
html[data-theme] .am-invoice-summary .am-invoice-summary-total,
html[data-theme] .am-invoice-summary .am-invoice-summary-subtotal,
html[data-theme] .am-invoice-summary .am-invoice-summary-discount,
html[data-theme] .am-invoice-summary .am-invoice-summary-tax,
html[data-theme] .am-invoice-summary .am-invoice-summary-shipping,
html[data-theme] .am-invoice-summary span,
html[data-theme] .am-invoice-summary strong,
html[data-theme] .am-invoice-summary a {
  color: var(--kt-text) !important;
}

html[data-theme] .am-invoice-summary .am-invoice-summary-item {
  border-bottom-color: var(--kt-border) !important;
}

html[data-theme] .am-invoice-summary tr.am-invoice-summary-delimeter hr {
  border-color: var(--kt-border) !important;
}

html[data-theme] .am-invoice-summary .am-invoice-summary-row-total td,
html[data-theme] .am-invoice-summary .am-invoice-summary-total {
  color: var(--kt-orange-600) !important;
  font-weight: 800;
}

/* ==========================================================================
   Single logo — navbar-header slot only (sidebar brand hidden)
   ========================================================================== */
html[data-theme] .kt-sidebar-brand {
  display: none !important;
}

html[data-theme] .navbar-header .kt-brand-lockup {
  display: inline-flex !important;
}

html[data-theme] .sidebar-nav .sidebar-item .first-level .sidebar-link {
  font-size: 13px !important;
  padding: 9px 14px 9px 12px !important;
  margin: 2px 12px !important;
}

html[data-theme] .sidebar-nav .sidebar-item .first-level {
  padding-left: 8px;
}

html[data-theme] .sidebar-nav .has-arrow::after {
  border-color: var(--kt-text-muted);
}

html[data-theme] .navbar-header .kt-brand-lockup {
  display: inline-flex !important;
}

html[data-theme] .sidebar-nav {
  padding-top: 8px !important;
}

/* Non-dashboard pages: remove empty breadcrumb gap */
html[data-theme] .page-breadcrumb:not(:has(.kt-hero-strip)) {
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
  display: none !important;
}

html[data-theme] .page-breadcrumb:not(:has(.kt-hero-strip)) + div:empty {
  display: none !important;
}

html[data-theme] .page-wrapper > .container-fluid {
  padding-top: 22px !important;
}

/* ==========================================================================
   Remove vendor page-wrapper side shadow + flat dashboard shells
   ========================================================================== */
html[data-theme] .page-wrapper {
  box-shadow: none !important;
  border-radius: 0 !important;
}

html[data-theme="dark"] .page-wrapper {
  background: var(--kt-bg) !important;
}

html[data-theme] .kt-hero-strip,
html[data-theme] .kt-member-resource-shell,
html[data-theme] .kt-dashboard-panel {
  box-shadow: none !important;
}

/* ==========================================================================
   Transaction history — override noobjoker grid defaults in dark mode
   ========================================================================== */
html[data-theme] .am-grid th {
  background-image: none !important;
}

html[data-theme="dark"] .am-widget .am-grid-container,
html[data-theme="dark"] .am-block .am-grid-container,
html[data-theme="dark"] .am-body-content-content .am-widget {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

html[data-theme="dark"] .am-grid-container {
  background: var(--kt-surface) !important;
  border: 1px solid var(--kt-border) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .am-grid-title,
html[data-theme="dark"] .am-grid-title-text,
html[data-theme="dark"] .am-grid-title-desc,
html[data-theme="dark"] .am-grid-back,
html[data-theme="dark"] .am-grid-back-wrapper,
html[data-theme="dark"] .am-grid-total,
html[data-theme="dark"] .am-grid th,
html[data-theme="dark"] .am-grid th a,
html[data-theme="dark"] .am-grid th a span,
html[data-theme="dark"] .am-grid tr.am-grid-row > td,
html[data-theme="dark"] .am-grid tr.am-grid-row.even td,
html[data-theme="dark"] .am-grid tr.am-grid-row.odd td,
html[data-theme="dark"] .am-grid tr.am-grid-row.odd td.sorted,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.sorted,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expandable-data,
html[data-theme="dark"] .am-grid tr.am-grid-row > td.expanded,
html[data-theme="dark"] .am-member-payment-history-items,
html[data-theme="dark"] .am-member-payment-history-paysys,
html[data-theme="dark"] .am-member-payment-history-amount,
html[data-theme="dark"] .am-pagination a,
html[data-theme="dark"] .am-pagination .am-pagination-current {
  color: var(--kt-text) !important;
}

html[data-theme="dark"] .am-grid tr.am-grid-row.even td,
html[data-theme="dark"] .am-grid tr.am-grid-row > td {
  background: var(--kt-surface) !important;
}

html[data-theme="dark"] .am-grid tr.am-grid-row.odd td,
html[data-theme="dark"] .am-grid tr.am-grid-row.odd td.sorted {
  background: var(--kt-surface-2) !important;
}

html[data-theme="dark"] .am-grid th,
html[data-theme="dark"] .am-grid th a {
  background: var(--kt-surface-2) !important;
  background-image: none !important;
  border-color: var(--kt-border) !important;
}

html[data-theme="dark"] .am-grid a,
html[data-theme="dark"] .am-grid td a,
html[data-theme="dark"] .am-grid th a.sorted-asc,
html[data-theme="dark"] .am-grid th a.sorted-desc {
  color: #ff8a4c !important;
}

html[data-theme="dark"] .am-body-content-content .am-block,
html[data-theme="dark"] .am-body-content-content .am-block .alert-success {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* ==========================================================================
   Transaction history page — kill white strip + invisible title text
   ========================================================================== */
html[data-theme="dark"] .page-wrapper,
html[data-theme="dark"] .page-breadcrumb,
html[data-theme="dark"] .container-fluid,
html[data-theme="dark"] .am-body-content,
html[data-theme="dark"] .am-body-content-top,
html[data-theme="dark"] .am-body-content-content {
  background: var(--kt-bg) !important;
  color: var(--kt-text) !important;
}

html[data-theme="dark"] .am-body .am-body-content-wrapper,
html[data-theme="dark"] .am-body-content-wrapper {
  background: transparent !important;
  border: none !important;
}

html[data-theme="dark"] body,
html[data-theme="dark"] body a.link,
html[data-theme="dark"] .page-wrapper a.link {
  color: var(--kt-text);
}

html[data-theme="dark"] .am-body-content-content h1,
html[data-theme="dark"] .am-body-content-content h2,
html[data-theme="dark"] .am-body-content-content h3,
html[data-theme="dark"] .am-body-content-content h4,
html[data-theme="dark"] .am-body-content-content p,
html[data-theme="dark"] .am-body-content-content span,
html[data-theme="dark"] .am-body-content-content label,
html[data-theme="dark"] .am-body-content-content li,
html[data-theme="dark"] .am-body-content-content .am-grid-title,
html[data-theme="dark"] .am-body-content-content .am-grid-title-text,
html[data-theme="dark"] .am-body-content-content .am-grid-title-desc,
html[data-theme="dark"] .am-body-content-content .am-grid-back,
html[data-theme="dark"] .am-body-content-content .am-grid-back-wrapper,
html[data-theme="dark"] .am-body-content-content .am-grid-total {
  color: var(--kt-text) !important;
}

html[data-theme="dark"] .am-body-content-content .am-grid-title,
html[data-theme="dark"] .am-body-content-content .am-grid-back-wrapper {
  background: transparent !important;
}

html[data-theme="dark"] .am-body-content-content .text-dark,
html[data-theme="dark"] .am-body-content-content .page-title {
  color: var(--kt-text) !important;
}

/* About Developer CMS page — keep embedded block readable in member shell */
html[data-theme] .am-body-content-content .kt-about-dev,
html[data-theme] .am-body-content-content .kt-about-dev h1,
html[data-theme] .am-body-content-content .kt-about-dev h2,
html[data-theme] .am-body-content-content .kt-about-dev h3,
html[data-theme] .am-body-content-content .kt-about-dev h4,
html[data-theme] .am-body-content-content .kt-about-dev p,
html[data-theme] .am-body-content-content .kt-about-dev li,
html[data-theme] .am-body-content-content .kt-about-dev cite,
html[data-theme] .am-body-content-content .kt-about-dev blockquote {
  color: inherit;
}

html[data-theme] .am-body-content-content .kt-about-dev a.kt-ad-btn-wa,
html[data-theme] .am-body-content-content .kt-about-dev a.kt-ad-btn-wa span,
html[data-theme] .am-body-content-content .kt-about-dev a.kt-ad-btn-wa:visited,
html[data-theme] .am-body-content-content .kt-about-dev a.kt-ad-btn-wa:hover {
  color: #ffffff !important;
}

/* CMS pages (About Us, Contact, Policies) — keep readable in member shell */
html[data-theme] .am-body-content-content .kt-cms-page,
html[data-theme] .am-body-content-content .kt-cms-page h1,
html[data-theme] .am-body-content-content .kt-cms-page h2,
html[data-theme] .am-body-content-content .kt-cms-page h3,
html[data-theme] .am-body-content-content .kt-cms-page p,
html[data-theme] .am-body-content-content .kt-cms-page li,
html[data-theme] .am-body-content-content .kt-cms-page strong,
html[data-theme] .am-body-content-content .kt-cms-page cite,
html[data-theme] .am-body-content-content .kt-cms-page blockquote {
  color: inherit;
}

html[data-theme] .am-body-content-content .kt-cms-page a.kt-cu-btn-wa,
html[data-theme] .am-body-content-content .kt-cms-page a.kt-cu-btn-wa span,
html[data-theme] .am-body-content-content .kt-cms-page a.kt-cu-btn-wa:visited,
html[data-theme] .am-body-content-content .kt-cms-page a.kt-cu-btn-wa:hover,
html[data-theme] .am-body-content-content .kt-cms-page a.kt-cu-btn-wa:focus {
  color: #ffffff !important;
}

html[data-theme] .am-body-content-content .kt-guide-page a.kt-gv-ext-btn,
html[data-theme] .am-body-content-content .kt-guide-page a.kt-gv-ext-btn span,
html[data-theme] .am-body-content-content .kt-guide-page a.kt-gv-btn-wa,
html[data-theme] .am-body-content-content .kt-guide-page a.kt-gv-btn-wa span {
  color: #ffffff !important;
}

html[data-theme] .am-body-content-content .kt-ro-page,
html[data-theme] .am-body-content-content .kt-ro-page h1,
html[data-theme] .am-body-content-content .kt-ro-page h2,
html[data-theme] .am-body-content-content .kt-ro-page h3,
html[data-theme] .am-body-content-content .kt-ro-page p,
html[data-theme] .am-body-content-content .kt-ro-page label,
html[data-theme] .am-body-content-content .kt-ro-page strong {
  color: inherit;
}

html[data-theme] .am-body-content-content .kt-ro-page a.kt-ro-footer-btn,
html[data-theme] .am-body-content-content .kt-ro-page a.kt-ro-footer-btn span,
html[data-theme] .am-body-content-content .kt-ro-page button.kt-ro-submit {
  color: #ffffff !important;
}

html[data-theme] .am-body-content-content .kt-pay-page,
html[data-theme] .am-body-content-content .kt-pay-page h1,
html[data-theme] .am-body-content-content .kt-pay-page h2,
html[data-theme] .am-body-content-content .kt-pay-page h3,
html[data-theme] .am-body-content-content .kt-pay-page p,
html[data-theme] .am-body-content-content .kt-pay-page label,
html[data-theme] .am-body-content-content .kt-pay-page strong {
  color: inherit;
}

html[data-theme] .am-body-content-content .kt-pay-page a.kt-pay-footer-btn,
html[data-theme] .am-body-content-content .kt-pay-page button.kt-pay-submit {
  color: #ffffff !important;
}
